Allow mysql-specific tasks to run based when using a gmysql backend, not on pdns_mysql_databases_credentials #186
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When we have a gmysql backend, we do still want to run most of the Mysql-specific setup, apart from the db/user creation. Previously, the pdns_mysql_databases_credentials var was used to trigger this.
However, pdns_mysql_databases_credentials contains the database 'root' credentials, and is used when creating the DB/User. Sometimes we don't need/have the root credentials, as the db might be externally provisioned. Yet we still need the mysql-backend dependencies, and might (optionally) also load the default schema.
This PR looks at the defined backends, and will trigger the MySQL tasks if it detects a gmysql backend.
Additionally, we introduce a boolean parameter
pdns_mysql_schema_load
(default true) so we can allow the user to optionally skip loading the default schema.Lastly, it adds a default host of "localhost" if not specified in the
pdns_backends['gmysql']
struct. TODO for later: if host isn't defined, use the unix socket instead of localhost.