Skip to content

Resolve "Add ability to configure TLS for MySQL in hammer"

Closes #2353 (closed).

  • ./hammer.py prepare-system -p local -w mysql,tls should now configure TLS for MySQL. ./hammer.py prepare-system -p local -w mysql explicitly removes TLS support in MySQL because I thought this ability is nice to have, but I understand how this could be undesired, so leave your opinion. Out of the systems I tested, after preparing the system, unit tests on Alpine-3.13, CentOS 7, Debian 11, Fedora 34, Ubuntu 20.04 work both with and without TLS. Unit tests run with disabled TLS even after preparing on Debian 9, Debian 10 because of SSL error: Unable to get private key from '/etc/mysql/ssl/kea-server.key or if certificates and keys are regenerated, SSL connection error: self signed certificate in certificate chain.
  • Add a regenerate.sh to automatically regenerate of certificates and keys without password or subject input.
  • Hammer now also configures MySQL to open a listening socket on TCP port 3306 if it is not already configured to do so. It should fix some Alpine unit tests in Jenkins.
  • Solved some pylint warnings in hammer.py. The one about the dangerous {} default in pkg_cache was serious.
  • Changed some ASSERT_NO_THROW in ASSERT_NO_THROW_LOG in mysql_connection_unittest.cc to help me debug some problems I had while developing this.
  • typo in unit-tests.dox
Edited by Andrei Pavel

Merge request reports