I have written a custom ConfigProvider
to externalise the secrets of the connector. I have a Docker image that builds on top of Debezium’s image and adds the JAR containing the provider to the libs
folder. It looks as follows:
FROM debezium/connect:latest
RUN echo "config.providers=identity" >> config/connect-distributed.properties
RUN echo "config.providers.identity.class=com.providers.identity.IdentityProvider" >> config/connect-distributed.properties
COPY target/identity-provider-1.0-jar-with-dependencies.jar libs/
In my connector configuration, I use variable instead of the plaintext, as suggested in the official blog post.
"database.hostname": "${identity:/tenant/whatever:postgres}"
However, upon POST-ing the connector configuration, I get the following error:
Connector configuration is invalid and contains the following 1 error(s):nThe ‘database.hostname’ value is invalid: ${identity:/tenant/whatever:postgres} has invalid format (only the underscore, hyphen, dot and alphanumeric characters are allowed)nYou can also find the above list of errors at the endpoint
/connector-plugins/{connectorType}/config/validate
What would be the reason for this error?