# CI Mark that build is executed in CI environment # GITLAB_CI Mark that build is executed in GitLab CI environment # CI_SERVER Mark that build is executed in CI environment # CI_SERVER_NAME CI server that is used to coordinate builds # CI_SERVER_VERSION Not yet defined # CI_SERVER_REVISION Not yet defined # CI_BUILD_REF The commit revision for which project is built # CI_BUILD_BEFORE_SHA The first commit that were included in push request # CI_BUILD_REF_NAME The branch or tag name for which project is built # CI_BUILD_ID The unique id of the current build that GitLab CI uses internally # CI_BUILD_REPO The URL to clone the Git repository # CI_PROJECT_ID The unique id of the current project that GitLab CI uses internally # CI_PROJECT_DIR The full path where the repository is cloned and where the build is ran variables: ANSIBLE_ROLE: "zen_rev_proxy" ANSIBLE_ROLE_PATH: "${CI_PROJECT_DIR}" ANSIBLE_EXTRA_VARS: "" stages: - check_and_lint - test_deploy ### BEGIN TEMPLATES ### .deb_header_template: &deb_header tags: - zen-ci-deb only: - development .centos_header_template: ¢os_header tags: - zen-ci only: - development .check_versions_template: &check_vers stage: check_and_lint script: - /bin/hostname - "cd ${CI_PROJECT_DIR} && git log -1" - "ansible --version" - "ansible-lint --version" #.lint_play_template: &lint_play # stage: check_and_lint # script: # - "ansible-lint -v ${ANSIBLE_ROLE_PATH}" .test_deploy_template: &test_deploy stage: test_deploy script: - cp -av ${ANSIBLE_ROLE_PATH} /etc/ansible/roles/${ANSIBLE_ROLE} - ansible-playbook -v --connection=local ${ANSIBLE_EXTRA_VARS} tests/test.yml - /bin/ls /etc/nginx/conf.d/* - /bin/ls /etc/nginx/ssl/* - /usr/sbin/nginx -c /etc/nginx/nginx.conf -t ### END TEMPLATES ### ### BEGIN JOBS ### Version Checks: <<: *deb_header <<: *check_vers #Lint Play: # <<: *deb_header # <<: *lint_play Test Deploy - Debian: <<: *deb_header <<: *test_deploy Test Deploy - CentOS: <<: *centos_header <<: *test_deploy ### END JOBS ###