diff --git a/tasks/database.yml b/tasks/database.yml index 98c2023..1e47d56 100644 --- a/tasks/database.yml +++ b/tasks/database.yml @@ -2,48 +2,39 @@ # task file for initialising and updating databse if configured - name: Check Kea DHCP database version - ansible.builtin.command: - argv: - - /usr/sbin/kea-admin - - db-version - - "{% if 'type' in kea_dhcp_database_config %}{{ kea_dhcp_database_config.type }}{% endif %}" - - "{% if 'user' in kea_dhcp_database_config %}-u {{ kea_dhcp_database_config.user }}{% endif %}" - - "{% if 'database' in kea_dhcp_database_config %}-n {{ kea_dhcp_database_config.database }}{% endif %}" - - "{% if 'password' in kea_dhcp_database_config %}-p {{ kea_dhcp_database_config.password }}{% endif %}" - - "{% if 'port' in kea_dhcp_database_config %}-P {{ kea_dhcp_database_config.port }}{% endif %}" - - "{% if 'host' in kea_dhcp_database_config %}-h {{ kea_dhcp_database_config.host }}{% endif %}" + ansible.builtin.shell: + cmd: "/usr/sbin/kea-admin db-version {{ kea_dhcp_database_config.type }}\ + {% if 'user' in kea_dhcp_database_config %}-u {{ kea_dhcp_database_config.user }}{% endif %}\ + {% if 'database' in kea_dhcp_database_config %}-n {{ kea_dhcp_database_config.database }}{% endif %}\ + {% if 'password' in kea_dhcp_database_config %}-p {{ kea_dhcp_database_config.password }}{% endif %}\ + {% if 'port' in kea_dhcp_database_config %}-P {{ kea_dhcp_database_config.port }}{% endif %}\ + {% if 'host' in kea_dhcp_database_config %}-h {{ kea_dhcp_database_config.host }}{% endif %}" register: kea_dhcp_db_version changed_when: false ignore_errors: true # no_log: true - name: Initialise Kea DHCP database # noqa: no-changed-when - ansible.builtin.command: - argv: - - /usr/sbin/kea-admin - - db-init - - "{% if 'type' in kea_dhcp_database_config %}{{ kea_dhcp_database_config.type }}{% endif %}" - - "{% if 'user' in kea_dhcp_database_config %}-u {{ kea_dhcp_database_config.user }}{% endif %}" - - "{% if 'database' in kea_dhcp_database_config %}-n {{ kea_dhcp_database_config.database }}{% endif %}" - - "{% if 'password' in kea_dhcp_database_config %}-p {{ kea_dhcp_database_config.password }}{% endif %}" - - "{% if 'port' in kea_dhcp_database_config %}-P {{ kea_dhcp_database_config.port }}{% endif %}" - - "{% if 'host' in kea_dhcp_database_config %}-h {{ kea_dhcp_database_config.host }}{% endif %}" + ansible.builtin.shell: + cmd: "/usr/sbin/kea-admin db-init {{ kea_dhcp_database_config.type }}\ + {% if 'user' in kea_dhcp_database_config %}-u {{ kea_dhcp_database_config.user }}{% endif %}\ + {% if 'database' in kea_dhcp_database_config %}-n {{ kea_dhcp_database_config.database }}{% endif %}\ + {% if 'password' in kea_dhcp_database_config %}-p {{ kea_dhcp_database_config.password }}{% endif %}\ + {% if 'port' in kea_dhcp_database_config %}-P {{ kea_dhcp_database_config.port }}{% endif %}\ + {% if 'host' in kea_dhcp_database_config %}-h {{ kea_dhcp_database_config.host }}{% endif %}" when: kea_dhcp_db_version is failed notify: restart kea-dhcp # no_log: true - name: Update Kea DHCP database # noqa: no-changed-when - ansible.builtin.command: - argv: - - /usr/sbin/kea-admin - - db-upgrade - - "{% if 'type' in kea_dhcp_database_config %}{{ kea_dhcp_database_config.type }}{% endif %}" - - "{% if 'user' in kea_dhcp_database_config %}-u {{ kea_dhcp_database_config.user }}{% endif %}" - - "{% if 'database' in kea_dhcp_database_config %}-n {{ kea_dhcp_database_config.database }}{% endif %}" - - "{% if 'password' in kea_dhcp_database_config %}-p {{ kea_dhcp_database_config.password }}{% endif %}" - - "{% if 'port' in kea_dhcp_database_config %}-P {{ kea_dhcp_database_config.port }}{% endif %}" - - "{% if 'host' in kea_dhcp_database_config %}-h {{ kea_dhcp_database_config.host }}{% endif %}" + ansible.builtin.shell: + cmd: "/usr/sbin/kea-admin db-upgrade {{ kea_dhcp_database_config.type }}\ + {% if 'user' in kea_dhcp_database_config %}-u {{ kea_dhcp_database_config.user }}{% endif %}\ + {% if 'database' in kea_dhcp_database_config %}-n {{ kea_dhcp_database_config.database }}{% endif %}\ + {% if 'password' in kea_dhcp_database_config %}-p {{ kea_dhcp_database_config.password }}{% endif %}\ + {% if 'port' in kea_dhcp_database_config %}-P {{ kea_dhcp_database_config.port }}{% endif %}\ + {% if 'host' in kea_dhcp_database_config %}-h {{ kea_dhcp_database_config.host }}{% endif %}" when: - kea_dhcp_db_version.stdout != kea_dhcp_version - kea_dhcp_db_version is succeeded