From b6fec08fb972e62b2c89309f8981e06c374b0b88 Mon Sep 17 00:00:00 2001 From: Forest Anderson Date: Wed, 24 Apr 2019 11:10:12 -0400 Subject: [PATCH] Uncommented lots of the tasks Former-commit-id: b7cf54de5691cec7f9f902ceb8eefda9afaf7038 --- .gitlab-ci.yml | 103 +++++++++++++++++++++++++++++++++++-------------- 1 file changed, 75 insertions(+), 28 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e7c76cf5dd..ced72afd6e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,17 +5,46 @@ stages: - pre-build - build - # - test - # - deploy - # - post-run + - test + - post-run before_script: + +# our own git fetch command like https://gitlab.com/gitlab-org/gitlab-runner/blob/master/shells/abstract.go +# speeds up building because we skip the git clean and dont need any gitlab caches +variables: + GIT_STRATEGY: none +before_script: + - cd /cache + - if [ -d .git ]; then + echo "is git dir"; + else + git clone $CI_REPOSITORY_URL . ; + fi; + - rm -f .git/index.lock + - rm -f .git/shallow.lock + - rm -f .git/HEAD.lock + - rm -f .git/hocks/post-checkout + - git remote set-url origin $CI_REPOSITORY_URL + - git fetch origin --prune +refs/heads/*:refs/remotes/origin/* +refs/tags/*:refs/tags/* + - git checkout -f -q $CI_COMMIT_SHA + - if [ ! -z "${SOURCE_PROJECT}" -a "${SOURCE_PROJECT}" != " " ]; then + echo "THIS SEEMS TO BE A MERGE PIPELINE FROM ${SOURCE_PROJECT}/${SOURCE_BRANCH}"; + git pull "https://gitlab.com/${SOURCE_PROJECT}/veloren.git" "${SOURCE_BRANCH}"; + fi; - git submodule sync --recursive - git submodule update --remote --recursive + - git status + - if [ -d target ]; then + ls -la target; + fi; + clean-code: stage: pre-build image: registry.gitlab.com/veloren/veloren-docker-ci + tags: + - docker script: - rustup component add rustfmt-preview - cargo fmt --all -- --check @@ -24,26 +53,38 @@ clean-code: build-voxygen: stage: build image: registry.gitlab.com/veloren/veloren-docker-ci + tags: + - docker script: - - (cd voxygen && cargo build --target-dir="/cache") + - (cd voxygen && cargo build) allow_failure: false build-server-cli: stage: build image: registry.gitlab.com/veloren/veloren-docker-ci + tags: + - docker script: - - (cd server-cli && cargo build --target-dir="/cache") + - (cd server-cli && cargo build) allow_failure: false -# unittests: -# stage: test -# script: -# - cargo test +unittests: + stage: test + image: registry.gitlab.com/veloren/veloren-docker-ci + tags: + - docker + script: + - cargo test + allow_failure: false -# #benchmarktests: -# # stage: test -# # script: -# # - cargo bench +benchmarktests: + stage: test + image: registry.gitlab.com/veloren/veloren-docker-ci + tags: + - docker + script: + - cargo bench + allow_failure: true # nightly-linux-debug: # stage: deploy @@ -196,19 +237,25 @@ build-server-cli: # # refs: # # - master -# coverage: -# stage: post-run -# script: -# - if cargo install --list | grep -i "cargo-tarpaulin"; then -# echo "tarpaulin already installed"; -# else -# RUSTFLAGS="--cfg procmacro2_semver_exempt" cargo install cargo-tarpaulin; -# fi -# - cargo tarpaulin --skip-clean --all || echo "There is a problem in tarpaulin which sometimes fails" +coverage: + stage: post-run + image: registry.gitlab.com/veloren/veloren-docker-ci + tags: + - docker + script: + - if cargo install --list | grep -i "cargo-tarpaulin"; then + echo "tarpaulin already installed"; + else + RUSTFLAGS="--cfg procmacro2_semver_exempt" cargo install cargo-tarpaulin; + fi + - cargo tarpaulin --skip-clean --all || echo "There is a problem in tarpaulin which sometimes fails" -# clippy: -# stage: post-run -# script: -# - rustup component add clippy-preview --toolchain=nightly -# - cargo clippy --all -- -D clippy || echo "This job is disabled, because we are not activly using it now, so we dont want to see yellow failed partly" -# allow_failure: true +clippy: + stage: post-run + image: registry.gitlab.com/veloren/veloren-docker-ci + tags: + - docker + script: + - rustup component add clippy-preview --toolchain=nightly + - cargo clippy --all -- -D clippy || echo "This job is disabled, because we are not activly using it now, so we dont want to see yellow failed partly" + allow_failure: true