diff --git a/releasenotes/notes/fix-generated-server_certs_key_passphrase-60cba4653109992c.yaml b/releasenotes/notes/fix-generated-server_certs_key_passphrase-60cba4653109992c.yaml new file mode 100644 index 000000000..f22b91305 --- /dev/null +++ b/releasenotes/notes/fix-generated-server_certs_key_passphrase-60cba4653109992c.yaml @@ -0,0 +1,5 @@ +--- +fixes: + - The passphrase for config option 'server_certs_key_passphrase', is used as + a Fernet key in Octavia and thus must be 32 bytes long. TripleO will now + auto-generate 32 bytes long passphrase for OctaviaServerCertsKeyPassphrase. \ No newline at end of file diff --git a/tripleo_common/tests/utils/test_passwords.py b/tripleo_common/tests/utils/test_passwords.py index 5efaf977b..a04586bbc 100644 --- a/tripleo_common/tests/utils/test_passwords.py +++ b/tripleo_common/tests/utils/test_passwords.py @@ -73,6 +73,7 @@ class TestPasswords(base.TestCase): self.assertNotEqual(value['KeystoneCredential0'], value['KeystoneCredential1']) + self.assertEqual(len(value['OctaviaServerCertsKeyPassphrase']), 32) def test_create_ssh_keypair(self): diff --git a/tripleo_common/utils/passwords.py b/tripleo_common/utils/passwords.py index 415312902..ef22de4a7 100644 --- a/tripleo_common/utils/passwords.py +++ b/tripleo_common/utils/passwords.py @@ -90,6 +90,9 @@ def generate_passwords(mistralclient=None, stack_env=None): elif name.startswith("HeatAuthEncryptionKey"): passwords[name] = passutils.generate_password( size=32) + elif name.startswith("OctaviaServerCertsKeyPassphrase"): + passwords[name] = passutils.generate_password( + size=32) else: passwords[name] = passutils.generate_password( size=_MIN_PASSWORD_SIZE)