--- # A pipeline is composed of independent jobs that run scripts, grouped into stages. # Stages run in sequential order, but jobs within stages run in parallel. # # For more information, see: https://docs.gitlab.com/ee/ci/yaml/index.html#stages stages: # List of stages for jobs, and their order of execution - test default: before_script: - source /opt/molecule/bin/activate - ansible --version - molecule --version after_script: - source /opt/molecule/bin/activate - molecule destroy --scenario-name default test-job: stage: test tags: - "shell" script: # make sure that Ansible Vaults are present and can be decrypted - echo "${VAULT_VALIDATORS}" > ../lza_validators.pass - export ANSIBLE_VAULT_PASSWORD_FILE="../lza_validators.pass" - rm -rf ../ansible_vaults/ - git clone https://gitlab+deploy-token-25:${VAULT_ACCESS_TOKEN}@git.slub-dresden.de/slub-referat-2-3/ansible_vaults.git ../ansible_vaults/; # - for FILE in $( find /home/gitlab-runner/builds/ -name "lza_validators.pass" ); do ls -l $FILE; done # run Molecule tests - molecule syntax --scenario-name default # We cannot use `molecule lint` anymore because: # - https://github.com/ansible-community/molecule/pull/3802 "Remove lint command" # - https://github.com/ansible-community/molecule/discussions/3825#discussioncomment-4908366 - yamllint --strict --format colored ./ - ansible-lint --format full --profile production --strict --force-color ./ - molecule create --scenario-name default - molecule converge --scenario-name default - molecule idempotence --scenario-name default - molecule verify --scenario-name default