From a331d20fe4093d39c2ad78370c8247b77c295486 Mon Sep 17 00:00:00 2001 From: Drew Short Date: Mon, 15 May 2017 07:16:52 -0500 Subject: [PATCH] Rebuilding CI build definition --- .gitlab-ci.yml | 202 ++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 175 insertions(+), 27 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b6cc955..d74500b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,8 +1,27 @@ stages: - - test - build + - test + - release -linux test stable: +build:linux:stable: + image: scorpil/rust:stable + stage: build + script: + - rustc -Vv + - cargo -Vv + - cargo build + only: + - master + - develop + tags: + - docker + artifacts: + expire_in: 4 hours + paths: + - target/debug/ + allow_failure: false + +test:linux:stable: image: scorpil/rust:stable stage: test script: @@ -14,60 +33,104 @@ linux test stable: - develop tags: - docker + dependencies: + - build:linux:stable + allow_failure: false + +release:linux:stable: + image: scorpil/rust:stable + stage: release + script: + - rustc -Vv + - cargo -Vv + - cargo build --release + artifacts: + expire_in: 4 weeks + paths: + - target/release/*.so + - target/release/pihash + only: + - master + - develop + tags: + - docker allow_failure: false -linux test beta: +build:linux:beta: image: scorpil/rust:beta - stage: test + stage: build script: - rustc -Vv - cargo -Vv - - cargo test + - cargo build only: + - master - develop tags: - docker + artifacts: + expire_in: 4 hours + paths: + - target/debug/ allow_failure: true -linux test nightly: - image: scorpil/rust:nightly +test:linux:beta: + image: scorpil/rust:beta stage: test script: - rustc -Vv - cargo -Vv - cargo test only: + - master - develop tags: - docker + dependencies: + - build:linux:beta allow_failure: true -linux build stable release: - image: scorpil/rust:stable +build:linux:nightly: + image: scorpil/rust:nightly stage: build script: - rustc -Vv - cargo -Vv - - cargo build --release + - cargo build + only: + - develop + tags: + - docker artifacts: + expire_in: 4 hours paths: - - target/release/*.so - - target/release/pihash + - target/debug/ + allow_failure: true + +test:linux:nightly: + image: scorpil/rust:nightly + stage: test + script: + - rustc -Vv + - cargo -Vv + - cargo test only: - - master - develop tags: - docker - allow_failure: false + dependencies: + - build:linux:nightly + allow_failure: true -linux build nightly release: +release:linux:nightly: image: scorpil/rust:nightly - stage: build + stage: release script: - rustc -Vv - cargo -Vv - cargo build --release artifacts: + expire_in: 1 week paths: - target/release/*.so - target/release/pihash @@ -77,29 +140,56 @@ linux build nightly release: - docker allow_failure: true -Windows test: +buid:windows:stable: + stage: build + variables: + RUST_TOOLCHAIN: stable-x86_64-pc-windows-gnu + script: + - rustup update + - rustup run $RUST_TOOLCHAIN rustc -Vv + - rustup run $RUST_TOOLCHAIN cargo -Vv + - rustup run $RUST_TOOLCHAIN cargo build + artifacts: + expire_in: 4 hours + paths: + - target/debug/ + only: + - master + - develop + tags: + - rust + - windows + allow_failure: false + +test:windows:stable: stage: test + variables: + RUST_TOOLCHAIN: stable-x86_64-pc-windows-gnu script: - rustup update - - rustc -Vv - - cargo -Vv - - cargo test + - rustup run $RUST_TOOLCHAIN rustc -Vv + - rustup run $RUST_TOOLCHAIN cargo -Vv + - rustup run $RUST_TOOLCHAIN cargo test only: - master - develop tags: - rust - windows - allow_failure: true + dependencies: + - build:windows:stable + allow_failure: false -Windows build release: - image: scorpil/rust:stable - stage: build +release:windows:stable: + stage: release + variables: + RUST_TOOLCHAIN: stable-x86_64-pc-windows-gnu script: - - rustc -Vv - - cargo -Vv - - cargo build --release + - rustup run $RUST_TOOLCHAIN rustc -Vv + - rustup run $RUST_TOOLCHAIN cargo -Vv + - rustup run $RUST_TOOLCHAIN cargo build --release artifacts: + expire_in: 4 weeks paths: - target/release/*.dll - target/release/pihash.exe @@ -110,3 +200,61 @@ Windows build release: - rust - windows allow_failure: false + +buid:windows:nightly: + stage: build + variables: + RUST_TOOLCHAIN: nightly-x86_64-pc-windows-gnu + script: + - rustup update + - rustup run $RUST_TOOLCHAIN rustc -Vv + - rustup run $RUST_TOOLCHAIN cargo -Vv + - rustup run $RUST_TOOLCHAIN cargo build + artifacts: + expire_in: 4 hours + paths: + - target/debug/ + only: + - develop + tags: + - rust + - windows + allow_failure: true + +test:windows:nightly: + stage: test + variables: + RUST_TOOLCHAIN: nightly-x86_64-pc-windows-gnu + script: + - rustup update + - rustup run $RUST_TOOLCHAIN rustc -Vv + - rustup run $RUST_TOOLCHAIN cargo -Vv + - rustup run $RUST_TOOLCHAIN cargo test + only: + - develop + tags: + - rust + - windows + dependencies: + - build:windows:nightly + allow_failure: true + +release:windows:nightly: + stage: release + variables: + RUST_TOOLCHAIN: nightly-x86_64-pc-windows-gnu + script: + - rustup run $RUST_TOOLCHAIN rustc -Vv + - rustup run $RUST_TOOLCHAIN cargo -Vv + - rustup run $RUST_TOOLCHAIN cargo build --release + artifacts: + expire_in: 1 week + paths: + - target/release/*.dll + - target/release/pihash.exe + only: + - develop + tags: + - rust + - windows + allow_failure: false