From 81bcd5fe291adb5883f7b9bd0dcb80033a84f00f Mon Sep 17 00:00:00 2001 From: Jean-Marie Gervais Date: Fri, 24 Nov 2023 18:11:40 +0100 Subject: [PATCH 1/6] ci: add license_check and conventional commits workflows --- .github/workflows/conventional-commits.yml | 10 ++++++++++ .github/workflows/license_check.yml | 11 +++++++++++ .licenserc.json | 10 ++++++++++ .../exporter/node/templates/node-exporter.service.j2 | 4 ++++ .../node/templates/tmpfiles-node-exporter.conf.j2 | 4 ++++ .../postgres/templates/postgres-exporter.env.j2 | 4 ++++ .../postgres/templates/postgres-exporter.logrotate.j2 | 4 ++++ .../postgres/templates/postgres-exporter.service.j2 | 4 ++++ roles/loki/server/templates/loki.service.j2 | 4 ++++ 9 files changed, 55 insertions(+) create mode 100644 .github/workflows/conventional-commits.yml create mode 100644 .github/workflows/license_check.yml create mode 100644 .licenserc.json diff --git a/.github/workflows/conventional-commits.yml b/.github/workflows/conventional-commits.yml new file mode 100644 index 0000000..715562d --- /dev/null +++ b/.github/workflows/conventional-commits.yml @@ -0,0 +1,10 @@ +name: Conventional Commits +on: + pull_request: + types: [opened, reopened, synchronize] +jobs: + check-conventional-commits: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: webiny/action-conventional-commits@v1.0.3 diff --git a/.github/workflows/license_check.yml b/.github/workflows/license_check.yml new file mode 100644 index 0000000..fd59a56 --- /dev/null +++ b/.github/workflows/license_check.yml @@ -0,0 +1,11 @@ +name: Check License Headers +on: + pull_request: + types: [opened, reopened, synchronize] +jobs: + check-license-headers: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + - name: Check license headers + run: npx @kt3k/license-checker@3.2.2 diff --git a/.licenserc.json b/.licenserc.json new file mode 100644 index 0000000..6246d58 --- /dev/null +++ b/.licenserc.json @@ -0,0 +1,10 @@ +{ + "**/*.{py,yml,j2}": [ + "# Copyright 2022 TOSIT.IO", + "# SPDX-License-Identifier: Apache-2.0" + ], + "ignore": [ + ".github", + "venv" + ] +} diff --git a/roles/exporter/node/templates/node-exporter.service.j2 b/roles/exporter/node/templates/node-exporter.service.j2 index 8131a7f..59d6bb4 100644 --- a/roles/exporter/node/templates/node-exporter.service.j2 +++ b/roles/exporter/node/templates/node-exporter.service.j2 @@ -1,3 +1,7 @@ +{# +# Copyright 2022 TOSIT.IO +# SPDX-License-Identifier: Apache-2.0 +#} [Unit] Description=Prometheus Node Exporter After=network-online.target diff --git a/roles/exporter/node/templates/tmpfiles-node-exporter.conf.j2 b/roles/exporter/node/templates/tmpfiles-node-exporter.conf.j2 index c9de623..d651bbf 100644 --- a/roles/exporter/node/templates/tmpfiles-node-exporter.conf.j2 +++ b/roles/exporter/node/templates/tmpfiles-node-exporter.conf.j2 @@ -1 +1,5 @@ +{# +# Copyright 2022 TOSIT.IO +# SPDX-License-Identifier: Apache-2.0 +#} d {{ node_exporter_pid_dir }} 0755 root root - diff --git a/roles/exporter/postgres/templates/postgres-exporter.env.j2 b/roles/exporter/postgres/templates/postgres-exporter.env.j2 index 5944add..9fbca22 100644 --- a/roles/exporter/postgres/templates/postgres-exporter.env.j2 +++ b/roles/exporter/postgres/templates/postgres-exporter.env.j2 @@ -1 +1,5 @@ +{# +# Copyright 2022 TOSIT.IO +# SPDX-License-Identifier: Apache-2.0 +#} DATA_SOURCE_NAME="postgresql://{{ postgres_exporter_sql_user }}:{{ postgres_exporter_sql_password }}@{{ groups['postgresql'][0] | tosit.tdp.access_fqdn(hostvars) }}:{{ postgresql_server_port }}/?sslmode=disable" diff --git a/roles/exporter/postgres/templates/postgres-exporter.logrotate.j2 b/roles/exporter/postgres/templates/postgres-exporter.logrotate.j2 index 18ce32e..23439a0 100644 --- a/roles/exporter/postgres/templates/postgres-exporter.logrotate.j2 +++ b/roles/exporter/postgres/templates/postgres-exporter.logrotate.j2 @@ -1,3 +1,7 @@ +{# +# Copyright 2022 TOSIT.IO +# SPDX-License-Identifier: Apache-2.0 +#} {{ postgres_exporter_log_dir }}/{{ postgres_exporter_log_file }} { compress delaycompress diff --git a/roles/exporter/postgres/templates/postgres-exporter.service.j2 b/roles/exporter/postgres/templates/postgres-exporter.service.j2 index 005208b..7bc4f04 100644 --- a/roles/exporter/postgres/templates/postgres-exporter.service.j2 +++ b/roles/exporter/postgres/templates/postgres-exporter.service.j2 @@ -1,3 +1,7 @@ +{# +# Copyright 2022 TOSIT.IO +# SPDX-License-Identifier: Apache-2.0 +#} [Unit] Description=Prometheus PostgreSQL Exporter Wants=network-online.target diff --git a/roles/loki/server/templates/loki.service.j2 b/roles/loki/server/templates/loki.service.j2 index cfc8a72..7a20fee 100644 --- a/roles/loki/server/templates/loki.service.j2 +++ b/roles/loki/server/templates/loki.service.j2 @@ -1,3 +1,7 @@ +{# +# Copyright 2022 TOSIT.IO +# SPDX-License-Identifier: Apache-2.0 +#} [Unit] Description=Loki service After=network.target From dcef385038ec334ff056e192b22afa2b242ea6eb Mon Sep 17 00:00:00 2001 From: Jean-Marie Gervais Date: Thu, 2 Nov 2023 13:57:20 +0100 Subject: [PATCH 2/6] ci:add ansible-lint workflow --- .ansible-lint | 14 ++++++++++ .github/workflows/ansible-lint.yml | 26 +++++++++++++++++++ dev/requirements.txt | 6 +++++ dev/setup.sh | 31 +++++++++++++++++++++++ playbooks/exporter_node_install.yml | 6 ++--- playbooks/exporter_node_restart.yml | 6 ++--- playbooks/exporter_node_start.yml | 6 ++--- playbooks/exporter_node_status.yml | 8 +++--- playbooks/exporter_node_stop.yml | 6 ++--- playbooks/exporter_postgres_install.yml | 6 ++--- playbooks/exporter_postgres_restart.yml | 6 ++--- playbooks/exporter_postgres_start.yml | 6 ++--- playbooks/exporter_postgres_status.yml | 8 +++--- playbooks/exporter_postgres_stop.yml | 6 ++--- playbooks/loki_server_config.yml | 7 ++--- playbooks/loki_server_install.yml | 7 ++--- playbooks/loki_server_restart.yml | 7 ++--- playbooks/loki_server_start.yml | 7 ++--- playbooks/loki_server_stop.yml | 7 ++--- roles/exporter/node/handlers/main.yml | 5 ++-- roles/exporter/node/tasks/install.yml | 13 +++++----- roles/exporter/node/tasks/status.yml | 2 +- roles/exporter/postgres/handlers/main.yml | 5 ++-- roles/exporter/postgres/tasks/install.yml | 13 +++++----- roles/exporter/postgres/tasks/status.yml | 2 +- roles/loki/server/handlers/main.yml | 5 ++-- roles/loki/server/tasks/config.yml | 4 +-- roles/loki/server/tasks/install.yml | 17 ++++++------- roles/loki/server/tasks/status.yml | 2 +- tdp_vars_defaults/exporter/exporter.yml | 6 ++--- 30 files changed, 166 insertions(+), 84 deletions(-) create mode 100644 .ansible-lint create mode 100644 .github/workflows/ansible-lint.yml create mode 100644 dev/requirements.txt create mode 100755 dev/setup.sh diff --git a/.ansible-lint b/.ansible-lint new file mode 100644 index 0000000..0d0c373 --- /dev/null +++ b/.ansible-lint @@ -0,0 +1,14 @@ +offline: true +exclude_paths: + - .github/ + - dev/ + - docs/ + - venv + - playbooks/meta + - tdp_lib_dag + - galaxy.yml + +warn_list: [] + +skip_list: + - yaml[octal-values] diff --git a/.github/workflows/ansible-lint.yml b/.github/workflows/ansible-lint.yml new file mode 100644 index 0000000..16827a6 --- /dev/null +++ b/.github/workflows/ansible-lint.yml @@ -0,0 +1,26 @@ +name: Ansible Lint +on: + pull_request: + types: [opened, reopened, synchronize] +env: + NAMESPACE: tosit + COLLECTION_NAME: tdp_observability + ANSIBLE_COLLECTIONS_PATH: ${{ github.workspace }} +jobs: + ansible-lint: + runs-on: ubuntu-latest + steps: + - name: Check out TOSIT-IO/tdp-collection + uses: actions/checkout@v3 + with: + repository: TOSIT-IO/tdp-collection + path: ansible_collections/${{env.NAMESPACE}}/tdp + - uses: actions/checkout@v3 + with: + path: ansible_collections/${{env.NAMESPACE}}/${{env.COLLECTION_NAME}} + - name: Setup venv for linting + run: dev/setup.sh + working-directory: ./ansible_collections/${{env.NAMESPACE}}/${{env.COLLECTION_NAME}} + - name: Run ansible-lint + run: source venv/bin/activate && ansible-lint + working-directory: ./ansible_collections/${{env.NAMESPACE}}/${{env.COLLECTION_NAME}} diff --git a/dev/requirements.txt b/dev/requirements.txt new file mode 100644 index 0000000..a4f1005 --- /dev/null +++ b/dev/requirements.txt @@ -0,0 +1,6 @@ +ansible-lint==6.17.2 +ansible-core==2.15.1 +jsonschema==4.18.0 +braceexpand==0.1.7 +termcolor==2.3.0 +gitPython==3.1.38 diff --git a/dev/setup.sh b/dev/setup.sh new file mode 100755 index 0000000..2dbb845 --- /dev/null +++ b/dev/setup.sh @@ -0,0 +1,31 @@ +#!/usr/bin/env bash + +set -euo pipefail + +readonly PYTHON_BIN=${PYTHON_BIN:-python3} +readonly PYTHON_VENV=${PYTHON_VENV:-venv} + +setup_python_venv() { + if [[ ! -d "$PYTHON_VENV" ]]; then + echo "Create python venv with '${PYTHON_BIN}' to '${PYTHON_VENV}' and update pip to latest version" + "$PYTHON_BIN" -m venv "$PYTHON_VENV" + ( + source "${PYTHON_VENV}/bin/activate" + pip install -U pip + ) + else + echo "Python venv '${PYTHON_VENV}' already exists, nothing to do" + fi + echo "Install python dependencies" + ( + source "${PYTHON_VENV}/bin/activate" + pip install -r dev/requirements.txt + ) + return 0 +} + +main() { + setup_python_venv +} + +main "$@" diff --git a/playbooks/exporter_node_install.yml b/playbooks/exporter_node_install.yml index d3034a7..e10ed8a 100644 --- a/playbooks/exporter_node_install.yml +++ b/playbooks/exporter_node_install.yml @@ -2,13 +2,13 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: node-exporter install +- name: Node exporter install hosts: exporter_node tasks: - - tosit.tdp.resolve: # noqa unnamed-task + - tosit.tdp.resolve: # noqa name[missing] node_name: exporter_node - name: Install node exporter ansible.builtin.import_role: name: tosit.tdp_observability.exporter.node tasks_from: install - - ansible.builtin.meta: clear_facts # noqa unnamed-task + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/exporter_node_restart.yml b/playbooks/exporter_node_restart.yml index 810e74d..f8ea96b 100644 --- a/playbooks/exporter_node_restart.yml +++ b/playbooks/exporter_node_restart.yml @@ -2,13 +2,13 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: node-exporter restart +- name: Node exporter restart hosts: exporter_node tasks: - - tosit.tdp.resolve: # noqa unnamed-task + - tosit.tdp.resolve: # noqa name[missing] node_name: exporter_node - name: Restart node exporter ansible.builtin.import_role: name: tosit.tdp_observability.exporter.node tasks_from: restart - - ansible.builtin.meta: clear_facts # noqa unnamed-task + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/exporter_node_start.yml b/playbooks/exporter_node_start.yml index 907fdc7..1926c9a 100644 --- a/playbooks/exporter_node_start.yml +++ b/playbooks/exporter_node_start.yml @@ -2,13 +2,13 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: node-exporter start +- name: Node exporter start hosts: exporter_node tasks: - - tosit.tdp.resolve: # noqa unnamed-task + - tosit.tdp.resolve: # noqa name[missing] node_name: exporter_node - name: Start node exporter ansible.builtin.import_role: name: tosit.tdp_observability.exporter.node tasks_from: start - - ansible.builtin.meta: clear_facts # noqa unnamed-task + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/exporter_node_status.yml b/playbooks/exporter_node_status.yml index 3f2e7a2..54fba44 100644 --- a/playbooks/exporter_node_status.yml +++ b/playbooks/exporter_node_status.yml @@ -2,13 +2,13 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: node-exporter status +- name: Node exporter status hosts: exporter_node tasks: - - tosit.tdp.resolve: # noqa unnamed-task + - tosit.tdp.resolve: # noqa name[missing] node_name: exporter_node - - name: node exporter status + - name: Node exporter status ansible.builtin.import_role: name: tosit.tdp_observability.exporter.node tasks_from: status - - ansible.builtin.meta: clear_facts # noqa unnamed-task + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/exporter_node_stop.yml b/playbooks/exporter_node_stop.yml index 16df9e5..c0ad531 100644 --- a/playbooks/exporter_node_stop.yml +++ b/playbooks/exporter_node_stop.yml @@ -2,13 +2,13 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: node-exporter stop +- name: Node exporter stop hosts: exporter_node tasks: - - tosit.tdp.resolve: # noqa unnamed-task + - tosit.tdp.resolve: # noqa name[missing] node_name: exporter_node - name: Stop node exporter ansible.builtin.import_role: name: tosit.tdp_observability.exporter.node tasks_from: stop - - ansible.builtin.meta: clear_facts # noqa unnamed-task + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/exporter_postgres_install.yml b/playbooks/exporter_postgres_install.yml index 3abe8ce..d28f938 100644 --- a/playbooks/exporter_postgres_install.yml +++ b/playbooks/exporter_postgres_install.yml @@ -2,13 +2,13 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: postgres-exporter install +- name: Postgres exporter install hosts: exporter_postgres tasks: - - tosit.tdp.resolve: # noqa unnamed-task + - tosit.tdp.resolve: # noqa name[missing] node_name: exporter_postgres - name: Install postgres exporter ansible.builtin.import_role: name: tosit.tdp_observability.exporter.postgres tasks_from: install - - ansible.builtin.meta: clear_facts # noqa unnamed-task + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/exporter_postgres_restart.yml b/playbooks/exporter_postgres_restart.yml index 3b33c0b..6fff577 100644 --- a/playbooks/exporter_postgres_restart.yml +++ b/playbooks/exporter_postgres_restart.yml @@ -2,13 +2,13 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: postgres-exporter restart +- name: Postgres exporter restart hosts: exporter_postgres tasks: - - tosit.tdp.resolve: # noqa unnamed-task + - tosit.tdp.resolve: # noqa name[missing] node_name: exporter_postgres - name: Restart postgres exporter ansible.builtin.import_role: name: tosit.tdp_observability.exporter.postgres tasks_from: restart - - ansible.builtin.meta: clear_facts # noqa unnamed-task + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/exporter_postgres_start.yml b/playbooks/exporter_postgres_start.yml index 03af8a3..ee8e78d 100644 --- a/playbooks/exporter_postgres_start.yml +++ b/playbooks/exporter_postgres_start.yml @@ -2,13 +2,13 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: postgres-exporter start +- name: Postgres exporter start hosts: exporter_postgres tasks: - - tosit.tdp.resolve: # noqa unnamed-task + - tosit.tdp.resolve: # noqa name[missing] node_name: exporter_postgres - name: Start postgres exporter ansible.builtin.import_role: name: tosit.tdp_observability.exporter.postgres tasks_from: start - - ansible.builtin.meta: clear_facts # noqa unnamed-task + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/exporter_postgres_status.yml b/playbooks/exporter_postgres_status.yml index e596f96..2a93f38 100644 --- a/playbooks/exporter_postgres_status.yml +++ b/playbooks/exporter_postgres_status.yml @@ -2,13 +2,13 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: postgres-exporter status +- name: Postgres exporter status hosts: exporter_postgres tasks: - - tosit.tdp.resolve: # noqa unnamed-task + - tosit.tdp.resolve: # noqa name[missing] node_name: exporter_postgres - - name: postgres exporter status + - name: Postgres exporter status ansible.builtin.import_role: name: tosit.tdp_observability.exporter.postgres tasks_from: status - - ansible.builtin.meta: clear_facts # noqa unnamed-task + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/exporter_postgres_stop.yml b/playbooks/exporter_postgres_stop.yml index 9c99a2f..c0c6b03 100644 --- a/playbooks/exporter_postgres_stop.yml +++ b/playbooks/exporter_postgres_stop.yml @@ -2,13 +2,13 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: postgres-exporter stop +- name: Postgres exporter stop hosts: exporter_postgres tasks: - - tosit.tdp.resolve: # noqa unnamed-task + - tosit.tdp.resolve: # noqa name[missing] node_name: exporter_postgres - name: Stop postgres exporter ansible.builtin.import_role: name: tosit.tdp_observability.exporter.postgres tasks_from: stop - - ansible.builtin.meta: clear_facts # noqa unnamed-task + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/loki_server_config.yml b/playbooks/loki_server_config.yml index a8d89f0..3f3377e 100644 --- a/playbooks/loki_server_config.yml +++ b/playbooks/loki_server_config.yml @@ -5,9 +5,10 @@ - name: Loki server config hosts: loki tasks: - - tosit.tdp.resolve: + - tosit.tdp.resolve: # noqa name[missing] node_name: loki_server - - ansible.builtin.import_role: + - name: Configure loki server + ansible.builtin.import_role: name: tosit.tdp_observability.loki.server tasks_from: config - - ansible.builtin.meta: clear_facts + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/loki_server_install.yml b/playbooks/loki_server_install.yml index 276f72c..13750a2 100644 --- a/playbooks/loki_server_install.yml +++ b/playbooks/loki_server_install.yml @@ -5,9 +5,10 @@ - name: Loki server install hosts: loki tasks: - - tosit.tdp.resolve: + - tosit.tdp.resolve: # noqa name[missing] node_name: loki_server - - ansible.builtin.import_role: + - name: Install loki server + ansible.builtin.import_role: name: tosit.tdp_observability.loki.server tasks_from: install - - ansible.builtin.meta: clear_facts + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/loki_server_restart.yml b/playbooks/loki_server_restart.yml index be80565..1b12c20 100644 --- a/playbooks/loki_server_restart.yml +++ b/playbooks/loki_server_restart.yml @@ -5,9 +5,10 @@ - name: Loki server restart hosts: loki tasks: - - tosit.tdp.resolve: + - tosit.tdp.resolve: # noqa name[missing] node_name: loki_server - - ansible.builtin.import_role: + - name: Restart loki server + ansible.builtin.import_role: name: tosit.tdp_observability.loki.server tasks_from: restart - - ansible.builtin.meta: clear_facts + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/loki_server_start.yml b/playbooks/loki_server_start.yml index 038c825..658053d 100644 --- a/playbooks/loki_server_start.yml +++ b/playbooks/loki_server_start.yml @@ -5,9 +5,10 @@ - name: Loki server start hosts: loki tasks: - - tosit.tdp.resolve: + - tosit.tdp.resolve: # noqa name[missing] node_name: loki_server - - ansible.builtin.import_role: + - name: Start loki server + ansible.builtin.import_role: name: tosit.tdp_observability.loki.server tasks_from: start - - ansible.builtin.meta: clear_facts + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/playbooks/loki_server_stop.yml b/playbooks/loki_server_stop.yml index 9650879..bef11eb 100644 --- a/playbooks/loki_server_stop.yml +++ b/playbooks/loki_server_stop.yml @@ -5,9 +5,10 @@ - name: Loki server stop hosts: loki tasks: - - tosit.tdp.resolve: + - tosit.tdp.resolve: # noqa name[missing] node_name: loki_server - - ansible.builtin.import_role: + - name: Stop loki server + ansible.builtin.import_role: name: tosit.tdp_observability.loki.server tasks_from: stop - - ansible.builtin.meta: clear_facts + - ansible.builtin.meta: clear_facts # noqa name[missing] diff --git a/roles/exporter/node/handlers/main.yml b/roles/exporter/node/handlers/main.yml index fc409e8..9baf135 100644 --- a/roles/exporter/node/handlers/main.yml +++ b/roles/exporter/node/handlers/main.yml @@ -2,6 +2,7 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: systemctl daemon-reload +- name: Run systemctl daemon-reload ansible.builtin.systemd: - daemon_reload: yes + daemon_reload: true + listen: systemctl daemon-reload diff --git a/roles/exporter/node/tasks/install.yml b/roles/exporter/node/tasks/install.yml index 0174688..7245751 100644 --- a/roles/exporter/node/tasks/install.yml +++ b/roles/exporter/node/tasks/install.yml @@ -2,20 +2,20 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: Ensure node exporter's group exists +- name: Ensure node exporter's group exists # noqa var-naming[no-role-prefix] ansible.builtin.include_role: name: tosit.tdp.utils.group vars: group: "{{ node_exporter_group }}" -- name: Ensure node exporter's user exists +- name: Ensure node exporter's user exists # noqa var-naming[no-role-prefix] ansible.builtin.include_role: name: tosit.tdp.utils.user vars: user: "{{ node_exporter_user }}" group: "{{ node_exporter_group }}" -- name: Upload {{ node_exporter_dist_file }} +- name: "Upload {{ node_exporter_dist_file }}" ansible.builtin.copy: src: "{{ binaries_local_dir }}/{{ node_exporter_dist_file }}" dest: "{{ binaries_upload_dir }}" @@ -24,7 +24,7 @@ mode: "644" diff: false -- name: Ensure {{ node_exporter_root_dir }} exists +- name: "Ensure directory exists : {{ node_exporter_root_dir }}" ansible.builtin.file: path: "{{ node_exporter_root_dir }}" state: directory @@ -32,7 +32,7 @@ group: root mode: "755" -- name: Extract {{ node_exporter_dist_file }} +- name: "Extract {{ node_exporter_dist_file }}" ansible.builtin.unarchive: src: "{{ binaries_upload_dir }}/{{ node_exporter_dist_file }}" dest: "{{ node_exporter_root_dir }}" @@ -71,5 +71,4 @@ group: root owner: root mode: "644" - notify: - - systemctl daemon-reload + notify: systemctl daemon-reload diff --git a/roles/exporter/node/tasks/status.yml b/roles/exporter/node/tasks/status.yml index ce413c7..1441222 100644 --- a/roles/exporter/node/tasks/status.yml +++ b/roles/exporter/node/tasks/status.yml @@ -5,7 +5,7 @@ - name: Populate service facts ansible.builtin.service_facts: -- name: Assert node-exporter is running +- name: Assert node-exporter is running ansible.builtin.assert: that: - ansible_facts.services['node-exporter.service'].state == "running" diff --git a/roles/exporter/postgres/handlers/main.yml b/roles/exporter/postgres/handlers/main.yml index fc409e8..9baf135 100644 --- a/roles/exporter/postgres/handlers/main.yml +++ b/roles/exporter/postgres/handlers/main.yml @@ -2,6 +2,7 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: systemctl daemon-reload +- name: Run systemctl daemon-reload ansible.builtin.systemd: - daemon_reload: yes + daemon_reload: true + listen: systemctl daemon-reload diff --git a/roles/exporter/postgres/tasks/install.yml b/roles/exporter/postgres/tasks/install.yml index f348b2b..1586101 100644 --- a/roles/exporter/postgres/tasks/install.yml +++ b/roles/exporter/postgres/tasks/install.yml @@ -2,20 +2,20 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: Ensure postgres exporter's group exists +- name: Ensure postgres exporter's group exists # noqa var-naming[no-role-prefix] ansible.builtin.include_role: name: tosit.tdp.utils.group vars: group: "{{ postgres_exporter_group }}" -- name: Ensure postgres exporter's user exists +- name: Ensure postgres exporter's user exists # noqa var-naming[no-role-prefix] ansible.builtin.include_role: name: tosit.tdp.utils.user vars: user: "{{ postgres_exporter_user }}" group: "{{ postgres_exporter_group }}" -- name: Upload {{ postgres_exporter_dist_file }} +- name: "Upload {{ postgres_exporter_dist_file }}" ansible.builtin.copy: src: "{{ binaries_local_dir }}/{{ postgres_exporter_dist_file }}" dest: "{{ binaries_upload_dir }}" @@ -24,7 +24,7 @@ mode: "644" diff: false -- name: Ensure {{ postgres_exporter_root_dir }} exists +- name: "Ensure directory : {{ postgres_exporter_root_dir }}" ansible.builtin.file: path: "{{ postgres_exporter_root_dir }}" state: directory @@ -32,7 +32,7 @@ group: root mode: "755" -- name: Extract {{ postgres_exporter_dist_file }} +- name: "Extract {{ postgres_exporter_dist_file }}" ansible.builtin.unarchive: src: "{{ binaries_upload_dir }}/{{ postgres_exporter_dist_file }}" dest: "{{ postgres_exporter_root_dir }}" @@ -93,5 +93,4 @@ group: root owner: root mode: "644" - notify: - - systemctl daemon-reload + notify: systemctl daemon-reload diff --git a/roles/exporter/postgres/tasks/status.yml b/roles/exporter/postgres/tasks/status.yml index 218304a..8498e04 100644 --- a/roles/exporter/postgres/tasks/status.yml +++ b/roles/exporter/postgres/tasks/status.yml @@ -5,7 +5,7 @@ - name: Populate service facts ansible.builtin.service_facts: -- name: Assert postgres-exporter is running +- name: Assert postgres-exporter is running ansible.builtin.assert: that: - ansible_facts.services['postgres-exporter.service'].state == "running" diff --git a/roles/loki/server/handlers/main.yml b/roles/loki/server/handlers/main.yml index fc409e8..9baf135 100644 --- a/roles/loki/server/handlers/main.yml +++ b/roles/loki/server/handlers/main.yml @@ -2,6 +2,7 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: systemctl daemon-reload +- name: Run systemctl daemon-reload ansible.builtin.systemd: - daemon_reload: yes + daemon_reload: true + listen: systemctl daemon-reload diff --git a/roles/loki/server/tasks/config.yml b/roles/loki/server/tasks/config.yml index 194aec4..ad95ccc 100644 --- a/roles/loki/server/tasks/config.yml +++ b/roles/loki/server/tasks/config.yml @@ -13,7 +13,7 @@ tags: - backup -- name: Render {{ loki_conf_dir }}/config.yml +- name: Render config.yml ansible.builtin.copy: dest: "{{ loki_conf_dir }}/config.yml" content: "{{ loki_configuration | to_nice_yaml(indent=1, sort_keys=False) }}" @@ -33,7 +33,7 @@ ansible.builtin.copy: src: "/etc/ssl/certs/{{ ansible_fqdn }}.{{ item }}" dest: "{{ loki_certs_dir }}/{{ ansible_fqdn }}.{{ item }}" - remote_src: yes + remote_src: true owner: "{{ loki_user }}" group: "{{ loki_group }}" mode: "0640" diff --git a/roles/loki/server/tasks/install.yml b/roles/loki/server/tasks/install.yml index 00beceb..a3e4f22 100644 --- a/roles/loki/server/tasks/install.yml +++ b/roles/loki/server/tasks/install.yml @@ -2,20 +2,20 @@ # SPDX-License-Identifier: Apache-2.0 --- -- name: Ensure loki's group exists +- name: "Ensure loki's group exists" # noqa var-naming[no-role-prefix] ansible.builtin.include_role: name: tosit.tdp.utils.group vars: group: "{{ loki_group }}" -- name: Ensure loki's user exists +- name: "Ensure loki's user exists" # noqa var-naming[no-role-prefix] ansible.builtin.include_role: name: tosit.tdp.utils.user vars: user: "{{ loki_user }}" group: "{{ loki_group }}" -- name: Upload {{ loki_dist_file }} +- name: "Upload {{ loki_dist_file }}" ansible.builtin.copy: src: "{{ binaries_local_dir }}/{{ loki_dist_file }}" dest: "{{ binaries_upload_dir }}" @@ -24,7 +24,7 @@ mode: "644" diff: false -- name: Ensure {{ loki_root_dir }}/{{ loki_release }} exists +- name: "Ensure directory loki_release exists" ansible.builtin.file: path: "{{ loki_root_dir }}/{{ loki_release }}" state: directory @@ -32,7 +32,7 @@ group: root mode: "755" -- name: Extract {{ loki_dist_file }} +- name: "Extract {{ loki_dist_file }}" ansible.builtin.unarchive: src: "{{ binaries_upload_dir }}/{{ loki_dist_file }}" dest: "{{ loki_root_dir }}/{{ loki_release }}" @@ -48,7 +48,7 @@ dest: "{{ loki_install_dir }}" state: link -- name: Ensure {{ loki_data_dir }} exists +- name: "Ensure directory exists: {{ loki_data_dir }}" ansible.builtin.file: path: "{{ loki_data_dir }}" state: directory @@ -56,7 +56,7 @@ group: "{{ loki_group }}" mode: "750" -- name: Ensure {{ loki_conf_dir }} exists +- name: "Ensure directory exists : {{ loki_conf_dir }}" ansible.builtin.file: path: "{{ loki_conf_dir }}" state: directory @@ -71,5 +71,4 @@ group: root owner: root mode: "644" - notify: - - systemctl daemon-reload + notify: systemctl daemon-reload diff --git a/roles/loki/server/tasks/status.yml b/roles/loki/server/tasks/status.yml index 145e829..4204954 100644 --- a/roles/loki/server/tasks/status.yml +++ b/roles/loki/server/tasks/status.yml @@ -5,7 +5,7 @@ - name: Populate service facts ansible.builtin.service_facts: -- name: Assert loki is running +- name: Assert loki is running ansible.builtin.assert: that: - ansible_facts.services['loki.service'].state == "running" diff --git a/tdp_vars_defaults/exporter/exporter.yml b/tdp_vars_defaults/exporter/exporter.yml index b10e752..fde20a0 100644 --- a/tdp_vars_defaults/exporter/exporter.yml +++ b/tdp_vars_defaults/exporter/exporter.yml @@ -2,9 +2,9 @@ # SPDX-License-Identifier: Apache-2.0 --- -############## -#node-exporter# -############## +################# +# node-exporter # +################# # node-exporter users and group node_exporter_user: node-exporter node_exporter_group: node-exporter From 73bbadb677abcc6965830b123de0edefe163f2cb Mon Sep 17 00:00:00 2001 From: Jean-Marie Gervais Date: Mon, 27 Nov 2023 11:33:21 +0100 Subject: [PATCH 3/6] fix: requirements --- dev/requirements.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dev/requirements.txt b/dev/requirements.txt index a4f1005..1d5260a 100644 --- a/dev/requirements.txt +++ b/dev/requirements.txt @@ -4,3 +4,5 @@ jsonschema==4.18.0 braceexpand==0.1.7 termcolor==2.3.0 gitPython==3.1.38 +passlib==1.7.4 +jmespath==1.0.1 From 16856a7f901286ac65b9e2ff26d15b93323274e8 Mon Sep 17 00:00:00 2001 From: Jean-Marie Gervais Date: Mon, 27 Nov 2023 11:57:45 +0100 Subject: [PATCH 4/6] fix:test --- dev/setup.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/dev/setup.sh b/dev/setup.sh index 2dbb845..acf7cf4 100755 --- a/dev/setup.sh +++ b/dev/setup.sh @@ -19,6 +19,7 @@ setup_python_venv() { echo "Install python dependencies" ( source "${PYTHON_VENV}/bin/activate" + pip install -r dev/requirements.txt ) return 0 From 3e8ba485fcc65f40b9ec778789679f70a683397d Mon Sep 17 00:00:00 2001 From: Jean-Marie Gervais Date: Mon, 27 Nov 2023 13:59:02 +0100 Subject: [PATCH 5/6] fix: add gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 01ecd8e..050d1f1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ # Visual Studio Code .vscode +venv From 3e7633beec7687aa7c823ce0bc6fb0aa003d11d1 Mon Sep 17 00:00:00 2001 From: Jean-Marie Gervais Date: Mon, 27 Nov 2023 14:04:01 +0100 Subject: [PATCH 6/6] add community.general collection --- dev/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/setup.sh b/dev/setup.sh index acf7cf4..db6739c 100755 --- a/dev/setup.sh +++ b/dev/setup.sh @@ -19,8 +19,8 @@ setup_python_venv() { echo "Install python dependencies" ( source "${PYTHON_VENV}/bin/activate" - pip install -r dev/requirements.txt + ansible-galaxy collection install community.general ) return 0 }