diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 000000000..83aca7570 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,166 @@ +stages: + - build + - deploy +variables: + GIT_DEPTH: "3" + SIMPLECOV: "true" + RUST_BACKTRACE: "1" +cache: + key: "$CI_BUILD_NAME/$CI_BUILD_REF_NAME" + untracked: true +linux-beta: + stage: build + image: ethcore/rust:beta + script: + - cargo build --release --verbose + - strip target/release/parity + tags: + - rust + - rust-beta + artifacts: + paths: + - target/release/parity + name: "${CI_BUILD_NAME}_parity" +linux-stable: + stage: build + image: ethcore/rust:stable + script: + - cargo build --release --verbose + - strip target/release/parity + tags: + - rust + - rust-stable + artifacts: + paths: + - target/release/parity + name: "${CI_BUILD_NAME}_parity" +linux-nightly: + stage: build + image: ethcore/rust:nightly + script: + - cargo build --release --verbose + - strip target/release/parity + tags: + - rust + - rust-nightly + artifacts: + paths: + - target/release/parity + name: "${CI_BUILD_NAME}_parity" +linux-centos: + stage: build + image: ethcore/rust-centos:latest + script: + - export CXX="g++" + - export CC="gcc" + - cargo build --release --verbose + - strip target/release/parity + tags: + - rust + - rust-centos + artifacts: + paths: + - target/release/parity + name: "${CI_BUILD_NAME}_parity" +linux-armv7: + stage: build + image: ethcore/rust-arm:latest + script: + - export CXX=arm-linux-gnueabihf-g++ + - export CC=arm-linux-gnueabihf-gcc + - mkdir -p .cargo + - echo "[target.armv7-unknown-linux-gnueabihf]" >> .cargo/config + - echo "linker= \"arm-linux-gnueabihf-gcc\"" >> .cargo/config + - cat .cargo/config + - cargo build --target armv7-unknown-linux-gnueabihf --release --verbose + - arm-linux-gnueabihf-strip target/armv7-unknown-linux-gnueabihf/release/parity + tags: + - rust + - rust-arm + artifacts: + paths: + - target/armv7-unknown-linux-gnueabihf/release/parity + name: "${CI_BUILD_NAME}_parity" +linux-arm: + stage: build + image: ethcore/rust-arm:latest + script: + - export CXX=arm-linux-gnueabihf-g++ + - export CC=arm-linux-gnueabihf-gcc + - mkdir -p .cargo + - echo "[target.arm-unknown-linux-gnueabihf]" >> .cargo/config + - echo "linker= \"arm-linux-gnueabihf-gcc\"" >> .cargo/config + - cat .cargo/config + - cargo build --target arm-unknown-linux-gnueabihf --release --verbose + - arm-linux-gnueabihf-strip target/arm-unknown-linux-gnueabihf/release/parity + tags: + - rust + - rust-arm + artifacts: + paths: + - target/arm-unknown-linux-gnueabihf/release/parity + name: "${CI_BUILD_NAME}_parity" +linux-armv6: + stage: build + image: ethcore/rust-arm:latest + script: + - export CXX=arm-linux-gnueabi-g++ + - export CC=arm-linux-gnueabi-gcc + - mkdir -p .cargo + - echo "[target.arm-unknown-linux-gnueabi]" >> .cargo/config + - echo "linker= \"arm-linux-gnueabi-gcc\"" >> .cargo/config + - cat .cargo/config + - cargo build --target arm-unknown-linux-gnueabi --release --verbose + - arm-linux-gnueabi-strip target/arm-unknown-linux-gnueabi/release/parity + tags: + - rust + - rust-arm + artifacts: + paths: + - target/arm-unknown-linux-gnueabi/release/parity + name: "${CI_BUILD_NAME}_parity" +linux-aarch64: + stage: build + image: ethcore/rust-arm:latest + script: + - export CXX=aarch64-linux-gnu-g++ + - export CC=aarch64-linux-gnu-gcc + - mkdir -p .cargo + - echo "[target.aarch64-unknown-linux-gnu]" >> .cargo/config + - echo "linker= \"aarch64-linux-gnu-gcc\"" >> .cargo/config + - cat .cargo/config + - cargo build --target aarch64-unknown-linux-gnu --release --verbose + - aarch64-linux-gnu-strip target/aarch64-unknown-linux-gnu/release/parity + tags: + - rust + - rust-arm + artifacts: + paths: + - target/aarch64-unknown-linux-gnu/release/parity + name: "${CI_BUILD_NAME}_parity" +darwin: + stage: build + script: + - cargo build --release --verbose + tags: + - osx + artifacts: + paths: + - target/release/parity + name: "${CI_BUILD_NAME}_parity" +windows: + stage: build + script: + - set INCLUDE=C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include;C:\vs2015\VC\include;C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt + - set LIB=C:\vs2015\VC\lib;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64 + - set RUST_BACKTRACE=1 + - SET + - rustup default stable-x86_64-pc-windows-msvc + - cargo build --release --verbose + tags: + - rust-windows + artifacts: + paths: + - target/release/parity.exe + - target/release/parity.pdb + name: "${CI_BUILD_NAME}_parity"