diff options
Diffstat (limited to 'roles/yamllint')
| -rw-r--r-- | roles/yamllint/defaults/main.yml | 2 | ||||
| -rw-r--r-- | roles/yamllint/meta/argument_specs.yml | 10 | ||||
| -rw-r--r-- | roles/yamllint/meta/main.yml | 18 | ||||
| -rw-r--r-- | roles/yamllint/tasks/main.yml | 19 |
4 files changed, 49 insertions, 0 deletions
diff --git a/roles/yamllint/defaults/main.yml b/roles/yamllint/defaults/main.yml new file mode 100644 index 00000000..43e19920 --- /dev/null +++ b/roles/yamllint/defaults/main.yml @@ -0,0 +1,2 @@ +--- +yamllint_version: "1.37.1" diff --git a/roles/yamllint/meta/argument_specs.yml b/roles/yamllint/meta/argument_specs.yml new file mode 100644 index 00000000..c79203f8 --- /dev/null +++ b/roles/yamllint/meta/argument_specs.yml @@ -0,0 +1,10 @@ +--- +argument_specs: + main: + short_description: "Install yamllint on Linux distributions" + description: "Install yamllint on Linux distributions" + options: + yamllint_version: + type: "str" + description: "The default yamllint version to use (must be in major.minor.patch format)" + default: "1.37.1" diff --git a/roles/yamllint/meta/main.yml b/roles/yamllint/meta/main.yml new file mode 100644 index 00000000..2be2e40e --- /dev/null +++ b/roles/yamllint/meta/main.yml @@ -0,0 +1,18 @@ +--- +dependencies: + - role: "python" +galaxy_info: + author: "a14m" + description: "Install yamllint using uv on Linux distributions" + license: "MIT" + min_ansible_version: "2.18" + platforms: + - name: "ArchLinux" + versions: + - "all" + - name: "Ubuntu" + versions: + - "noble" + - name: "Debian" + versions: + - "bookworm" diff --git a/roles/yamllint/tasks/main.yml b/roles/yamllint/tasks/main.yml new file mode 100644 index 00000000..902f0e02 --- /dev/null +++ b/roles/yamllint/tasks/main.yml @@ -0,0 +1,19 @@ +--- +- name: "Check yamllint version {{ yamllint_version }}" + ansible.builtin.shell: | + set -euo pipefail + uv tool list | grep "^yamllint " | awk '{print $2}' | sed 's/^v//' + args: + executable: /bin/bash + register: ansible_lint_installed_version + changed_when: false + failed_when: false + +- name: "Install yamllint version {{ yamllint_version }}" + ansible.builtin.shell: | + set -euo pipefail + uv tool install yamllint=={{ yamllint_version }} --force + args: + executable: /bin/bash + changed_when: true + when: ansible_lint_installed_version.stdout != yamllint_version |
