diff --git a/.src/playbooks/mixin-ouput-ensure-git-checkin.yml b/.src/playbooks/mixin-ouput-ensure-git-checkin.yml new file mode 100644 index 0000000..55eaad1 --- /dev/null +++ b/.src/playbooks/mixin-ouput-ensure-git-checkin.yml @@ -0,0 +1,38 @@ +--- +- name: Run check-shell-syntax + connection: local + hosts: localhost + #hosts: all + vars: + zuul: + project: + src_dir: ../.. + tasks: + - name: Build monitoring-mixin container + containers.podman.podman_image: + name: mixin-builder + path: "./{{ zuul.project.src_dir }}/.src" + build: + file: "./{{ zuul.project.src_dir }}/.src/Containerfile" + - name: Install monitoring-mixin dependencies + containers.podman.podman_container: + command: jb install + <<: &mixin_container_options + name: mixin-builder + image: localhost/mixin-builder + detach: false + volume: + - "./{{ zuul.project.src_dir }}:/srv" + rm: true + - name: Render monitoring-mixin rules / dashboards + containers.podman.podman_container: + <<: *mixin_container_options + - name: Check difference between git and generated rules / dashboards + ansible.builtin.command: + argv: + - /usr/bin/git + - diff + - --exit-code + register: git_diff + changed_when: false + failed_when: git_diff.rc != 0 diff --git a/.zuul.yaml b/.zuul.yaml index 11b9930..1d3570a 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -1,13 +1,32 @@ --- +- job: + name: mixin-ouput-ensure-git-checkin + description: Check for differences between monitoring-mixin output and checked in rules/dashboards + run: .src/playbooks/mixin-ouput-ensure-git-checkin.yml - project: default-branch: main merge-mode: squash-merge check: jobs: - yamllint + - ansible-lint: &ansible-lint + files: + - ^\.src/playbooks/.*\.(yaml|yml)$ + - check-shell-syntax: &check-shell-syntax + files: + - ^\.src/files/mixins.sh$ + - mixin-ouput-ensure-git-checkin: &mixin-ouput-ensure-git-checkin + files: + - ^\.src/.*$ gate: jobs: - yamllint + - *ansible-lint + - *check-shell-syntax + - *mixin-ouput-ensure-git-checkin periodic-daily: jobs: - yamllint + - *ansible-lint + - *check-shell-syntax + - *mixin-ouput-ensure-git-checkin