Resolving SSL Certificate Error in Python Kafka Emitter for Schema Registry

Right

Then how can I resolve this ?

I think this line throws the error -> https://github.com/acryldata/datahub-actions/blob/fa7b2d5fa6c8e3d6ea3b02979652425469ddf24a/docker/datahub-actions/Dockerfile#L49

I think you can do the following::

  1. Set an environment variable for your Docker container and specify the SSL cert file with the SSL_CERT_FILE environment variable.
    Based on Golang’s doc (which is the language dockerize was built):
    On Unix systems other than macOS the environment variables SSL_CERT_FILE and SSL_CERT_DIR can be used to override the system default locations for the SSL certificate file and SSL certificate files directory, respectively. The latter can be a colon-separated list.

Hi tamas
The above issue is fix but after adding the config into schema registry client like this
My python code is giving this error : str object is not a mapping
Can you please have a look on this picture ?
And check it’s a correct way of providing ?

<@U03MF8MU5P0> and <@UV14447EU>

<@UV0M2EB8Q>

This error is coming at schema_registry_conf = {
‘Url’ : self.action_config. Schema_registry_url ,
**self.action_config.ssl_ca_istio_location

<@U03AS5X5H7Y>, this issue happens if your variable is not a dict but a string you pass.
Please, can you check/print self.action_config.ssl_ca_istio_location ?

I am
Using only Kafka emitter and in that I am providing all the configuration
But only for schema registry certificate verification I am getting error :

It’s not working for ssl.ca.location and producer config is working fine

Is it correct way right?

is it intentional you are passing a different ca for producer than for schema_registry?

If we pass the same also same error

Unable to get local issuer certificate

But when I am crul the url to that particular location I am getting reposne

Do you pass the ca file to the curl command?

Yes

How can I fix this and I am stuck from 1 week on this

The config seems to be ok. Do you pass the same ca file location which you used in your curl command?