Closed clement-splk closed 6 years ago
I've seen this error when running under python27. Can you trying changing the command from python
to python3
in https://github.com/Netflix/lemur-docker/blob/master/web/api-start.sh#L44 to see if that resolves your issue?
Looks like it is related to PyOpenSSL issue: https://github.com/pyca/pyopenssl/issues/15
The following is the traceback -
Downloading certs [2017-02-24 23:39:05,752] ERROR in schema: initializer for ctype 'char[]' must be a str or list or tuple, not unicode Traceback (most recent call last): File "/www/lemur/lemur/common/schema.py", line 158, in decorated_function resp = f(*args, kwargs) File "/www/lemur/lemur/certificates/views.py", line 272, in post return service.create(data) File "/www/lemur/lemur/certificates/service.py", line 244, in create cert = Certificate(kwargs) File "", line 4, in init
File "/www/lemur/local/lib/python2.7/site-packages/sqlalchemy/orm/state.py", line 414, in _initialize_instance
manager.dispatch.init_failure(self, args, kwargs)
File "/www/lemur/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 60, in exit
compat.reraise(exc_type, exc_value, exc_tb)
File "/www/lemur/local/lib/python2.7/site-packages/sqlalchemy/orm/state.py", line 411, in _initialize_instance
return manager.original_init(*mixed[1:], *kwargs)
File "/www/lemur/lemur/certificates/models.py", line 123, in init
cert = lemur.common.utils.parse_certificate(kwargs['body'])
File "/www/lemur/lemur/common/utils.py", line 50, in parse_certificate
return x509.load_pem_x509_certificate(body, default_backend())
File "/www/lemur/local/lib/python2.7/site-packages/cryptography/x509/base.py", line 43, in load_pem_x509_certificate
return backend.load_pem_x509_certificate(data)
File "/www/lemur/local/lib/python2.7/site-packages/cryptography/hazmat/backends/multibackend.py", line 341, in load_pem_x509_certificate
return b.load_pem_x509_certificate(data)
File "/www/lemur/local/lib/python2.7/site-packages/cryptography/hazmat/backends/openssl/backend.py", line 1169, in load_pem_x509_certificate
mem_bio = self._bytes_to_bio(data)
File "/www/lemur/local/lib/python2.7/site-packages/cryptography/hazmat/backends/openssl/backend.py", line 490, in _bytes_to_bio
data_char_p = self._ffi.new("char[]", data)
TypeError: initializer for ctype 'char[]' must be a str or list or tuple, not unicode
initializer for ctype 'char[]' must be a str or list or tuple, not unicode
Traceback (most recent call last):
File "/www/lemur/lemur/common/schema.py", line 158, in decorated_function
resp = f(args, kwargs)
File "/www/lemur/lemur/certificates/views.py", line 272, in post
return service.create(data)
File "/www/lemur/lemur/certificates/service.py", line 244, in create
cert = Certificate(kwargs)
File "", line 4, in init
File "/www/lemur/local/lib/python2.7/site-packages/sqlalchemy/orm/state.py", line 414, in _initialize_instance
manager.dispatch.init_failure(self, args, kwargs)
File "/www/lemur/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 60, in exit
compat.reraise(exc_type, exc_value, exc_tb)
File "/www/lemur/local/lib/python2.7/site-packages/sqlalchemy/orm/state.py", line 411, in _initialize_instance
return manager.original_init(*mixed[1:], **kwargs)
File "/www/lemur/lemur/certificates/models.py", line 123, in init
cert = lemur.common.utils.parse_certificate(kwargs['body'])
File "/www/lemur/lemur/common/utils.py", line 50, in parse_certificate
return x509.load_pem_x509_certificate(body, default_backend())
File "/www/lemur/local/lib/python2.7/site-packages/cryptography/x509/base.py", line 43, in load_pem_x509_certificate
return backend.load_pem_x509_certificate(data)
File "/www/lemur/local/lib/python2.7/site-packages/cryptography/hazmat/backends/multibackend.py", line 341, in load_pem_x509_certificate
return b.load_pem_x509_certificate(data)
File "/www/lemur/local/lib/python2.7/site-packages/cryptography/hazmat/backends/openssl/backend.py", line 1169, in load_pem_x509_certificate
mem_bio = self._bytes_to_bio(data)
File "/www/lemur/local/lib/python2.7/site-packages/cryptography/hazmat/backends/openssl/backend.py", line 490, in _bytes_to_bio
data_char_p = self._ffi.new("char[]", data)
TypeError: initializer for ctype 'char[]' must be a str or list or tuple, not unicode