sudo: required dist: bionic # (18.04) language: cpp cache: ccache addons: apt: update: true services: - mysql - docker git: depth: 10 stages: - prepare_cache - run jobs: include: - stage: prepare_cache env: TRAVIS_BUILD_ID="1" before_install: - git config user.email "azerothcorebot@gmail.com" && git config user.name "AzerothCoreBot" - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then cd bin/; fi # import pending sql - if [ "$TRAVIS_PULL_REQUEST" = "false" ] && [ "$TRAVIS_BRANCH" = "master" ]; then source acore-db-pendings; fi - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then cd ..; fi # push changes to git if any - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then git fetch --unshallow; fi - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then git checkout $TRAVIS_BRANCH; fi - if [ "$TRAVIS_PULL_REQUEST" = "false" ] && [[ -n "$GITHUB_API_KEY" ]]; then git add -A . && git diff --cached --quiet || git commit -am "Import pending SQL update file..." -m "Referenced commit(s):$COMMIT_HASH" && git push https://$GITHUB_API_KEY@github.com/$TRAVIS_REPO_SLUG.git $TRAVIS_BRANCH; fi # sync staging with master # - if [ "$TRAVIS_PULL_REQUEST" = "false" ] && [ "$TRAVIS_BRANCH" = "master" ] && [[ -n "$GITHUB_API_KEY" ]]; then git fetch origin staging:staging && git checkout staging && git merge --no-edit master && git push https://$GITHUB_API_KEY@github.com/$TRAVIS_REPO_SLUG.git staging; git checkout master; fi - source ./apps/ci/ci-before_install.sh install: - source ./apps/ci/ci-install.sh OFF - source ./apps/ci/ci-install-modules.sh script: - source ./apps/ci/ci-compile.sh - stage: run env: TRAVIS_BUILD_ID="1" before_install: - source ./apps/ci/ci-before_install.sh install: - source ./apps/ci/ci-install.sh ON - source ./apps/ci/ci-install-modules.sh - source ./apps/ci/ci-import-db.sh script: - source ./apps/ci/ci-compile.sh - source ./apps/ci/ci-worldserver-dry-run.sh - stage: prepare_cache env: TRAVIS_BUILD_ID="2" before_install: - source ./apps/ci/ci-before_install.sh install: - source ./apps/ci/ci-install.sh OFF - source ./apps/ci/ci-install-modules.sh script: - source ./apps/ci/ci-compile.sh - stage: run env: TRAVIS_BUILD_ID="2" before_install: - source ./apps/ci/ci-before_install.sh install: - source ./apps/ci/ci-install.sh ON - source ./apps/ci/ci-install-modules.sh script: - source ./apps/ci/ci-compile.sh - stage: run env: TRAVIS_BUILD_ID="3" script: - ./apps/ci/docker/ci-docker-config.sh - ./bin/acore-docker-generate-etc - ./bin/acore-docker-build-no-scripts - docker-compose up -d ac-database