@installdoc/ansible-gas-station
Version:
An Ansible playbook that provisions your network with software from GitHub Awesome lists, developed with disaster recovery in mind ⛽🔥🤤
50 lines (49 loc) • 1.4 kB
YAML
test:molecule:linux:
stage: test
image:
name: megabytelabs/linux-molecule:latest
entrypoint: ['']
services:
- docker:20.10.7-dind
parallel:
matrix:
- OPERATING_SYSTEM: ArchLinux
- OPERATING_SYSTEM: CentOS
- OPERATING_SYSTEM: Debian
- OPERATING_SYSTEM: Fedora
- OPERATING_SYSTEM: Ubuntu
rules:
- if: $DO_CI == 'false'
when: never
- if: $CI_COMMIT_TITLE =~ /^(automation|chore).*/
when: never
- if: $CI_COMMIT_BRANCH == 'synchronize'
when: never
- if: $CI_COMMIT_BRANCH == 'test/linux'
- if: $CI_PIPELINE_SOURCE == 'schedule' || $CI_PIPELINE_SOURCE == 'web'
- if: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == 'master'
changes:
- main.yml
needs: []
variables:
DOCKER_CERT_PATH: $DOCKER_TLS_CERTDIR/client
DOCKER_HOST: tcp://docker:2376
DOCKER_TLS_CERTDIR: /certs
DOCKER_TLS_VERIFY: 1
GIT_DEPTH: 1
before_script:
- find . -print0 | xargs -0 sudo chown crovax:crovax
- |
if [ "$CI_COMMIT_BRANCH" == 'test/linux' ]; then
git pull origin master
git push origin "$CI_COMMIT_BRANCH"
fi
script:
- source "$HOME/.profile"
- task environment -- dev
- OPTIMIZED_IMAGE=false task ansible:test:molecule:docker:cli -- "$OPERATING_SYSTEM"
artifacts:
when: always
reports:
junit: molecule/.results/junit/*.xml