From 879be825f98b8f5e35a00f5ca6ec789764819550 Mon Sep 17 00:00:00 2001 From: Simon Cornet Date: Sat, 1 Nov 2025 12:55:50 +0100 Subject: [PATCH] feat: implement new role layout --- .gitlab-ci.yml | 11 +-------- .gitlab/deployment.yaml | 32 ------------------------- molecule/default/converge.yml | 8 ------- molecule/default/molecule.yml | 44 ----------------------------------- molecule/default/verify.yml | 37 ----------------------------- playbook.yaml | 8 ++++--- 6 files changed, 6 insertions(+), 134 deletions(-) delete mode 100644 .gitlab/deployment.yaml delete mode 100644 molecule/default/converge.yml delete mode 100644 molecule/default/molecule.yml delete mode 100644 molecule/default/verify.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e48fc0b..ccccaf2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,25 +2,16 @@ # gitLab ci stages stages: - - # deployment - "gitleaks" - "linting" - - "testing" - - "deployment" - # include jobs include: - # deployment + # code plumbing - local: ".gitlab/gitleaks.yaml" - - local: ".gitlab/deployment.yaml" # linting - component: "$CI_SERVER_FQDN/components/ansible/linting@v3.0.3" - component: "$CI_SERVER_FQDN/components/markdownlint/markdownlint@1.0.0" - component: "$CI_SERVER_FQDN/components/yamllint/yamllint@1.0.2" - - # testing - - component: "$CI_SERVER_FQDN/components/ansible/testing@v3.0.3" diff --git a/.gitlab/deployment.yaml b/.gitlab/deployment.yaml deleted file mode 100644 index 869badc..0000000 --- a/.gitlab/deployment.yaml +++ /dev/null @@ -1,32 +0,0 @@ ---- -# deploy ansible/roles/common code -deployment: - stage: "deployment" - image: - name: "registry.gitlab.simoncor.net/oci/ssh-client:v25.06.03" - entrypoint: ["/bin/sh", "-c"] - rules: - - # run only on push to default branch - - if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' - - when: "never" - - # prepare ssh - before_script: - - # prepare ssh - - | - # prepare ssh - mkdir -p ~/.ssh - chmod 700 ~/.ssh - echo "$SSH_CONFIG" > ~/.ssh/config - echo "$SSH_DEPLOYMENT_KEY" > ~/.ssh/id_ed25519 - chmod 600 ~/.ssh/id_ed25519 - - # deployment commands - script: - - - | - # install ansible roles dependancies - ssh $SSH_DEPLOYMENT_USER@$ANSIBLE_SERVER \ - "sudo /usr/local/bin/ansible-galaxy install -r /etc/ansible/roles/requirements.yaml --force" diff --git a/molecule/default/converge.yml b/molecule/default/converge.yml deleted file mode 100644 index 293fbf7..0000000 --- a/molecule/default/converge.yml +++ /dev/null @@ -1,8 +0,0 @@ ---- - -- name: "converge" - hosts: "all" - become: true - gather_facts: true - roles: - - role: "siempie.atuin" diff --git a/molecule/default/molecule.yml b/molecule/default/molecule.yml deleted file mode 100644 index e3613b6..0000000 --- a/molecule/default/molecule.yml +++ /dev/null @@ -1,44 +0,0 @@ ---- - -dependency: - name: "galaxy" - -driver: - name: "docker" - -provisioner: - name: "ansible" - env: - MOLECULE_TESTING: "true" - -verifier: - name: "ansible" - -platforms: - - # debian 12 - - name: "debian-12" - image: "geerlingguy/docker-debian12-ansible:latest" - pre_build_image: true - privileged: true - volumes: - - "/sys/fs/cgroup:/sys/fs/cgroup:rw" - command: "/lib/systemd/systemd" - - # ubuntu 22 - - name: "ubuntu-22" - image: "geerlingguy/docker-ubuntu2204-ansible:latest" - pre_build_image: true - privileged: true - volumes: - - "/sys/fs/cgroup:/sys/fs/cgroup:rw" - command: "/lib/systemd/systemd" - - # ubuntu 24 - - name: "ubuntu-24" - image: "geerlingguy/docker-ubuntu2404-ansible:latest" - pre_build_image: true - privileged: true - volumes: - - "/sys/fs/cgroup:/sys/fs/cgroup:rw" - command: "/lib/systemd/systemd" diff --git a/molecule/default/verify.yml b/molecule/default/verify.yml deleted file mode 100644 index 4f00068..0000000 --- a/molecule/default/verify.yml +++ /dev/null @@ -1,37 +0,0 @@ ---- - -# verify -- name: "verify" - hosts: "all" - become: true - gather_facts: true - vars: - # renovate: datasource=github-releases depName=atuinsh/atuin versioning=pep440 - atuin_version: "18.10.0" - atuin_binary_path: "/usr/local/bin/atuin" - - tasks: - - # check if atuin binary is installed - - name: "check if atuin binary exists" - ansible.builtin.stat: - path: "{{ atuin_binary_path }}" - register: "atuin_binary_stat" - - - name: "fail if atuin binary does not exist" - ansible.builtin.fail: - msg: "Atuin binary not found at {{ atuin_binary_path }}" - when: "not atuin_binary_stat.stat.exists" - - # check atuin version - - name: "check current atuin version" - ansible.builtin.command: "{{ atuin_binary_path }} -V" - register: "atuin_version_check" - changed_when: false - failed_when: "atuin_version_check.rc != 0" - - - name: "assert atuin version matches expected" - ansible.builtin.assert: - that: "'{{ atuin_version }}' in atuin_version_check.stdout" - fail_msg: "Atuin version ({{ atuin_version_check.stdout }}) does not match ({{ atuin_version }})" - success_msg: "Atuin version matches expected ({{ atuin_version }})" diff --git a/playbook.yaml b/playbook.yaml index e6e4848..872b78c 100644 --- a/playbook.yaml +++ b/playbook.yaml @@ -4,7 +4,7 @@ - name: "install and configure Atuin Server" hosts: "all" become: true - pre_tasks: + tasks: # due to semaphore bug we need to do this ourselves - name: "force-update requirements" @@ -15,5 +15,7 @@ changed_when: false failed_when: false - roles: - - role: "atuin" + # execute the role + - name: "execute role: atuin" + ansible.builtin.include_role: + name: "atuin"