kind: pipeline name: default trigger: event: include: - promote - pull_request steps: - name: test image: rust:latest commands: - apt-get update - apt-get -y install libgtk-3-dev libxcb-shape0-dev libxcb-xfixes0-dev - rustup component add clippy - cargo clippy - cargo test --all when: event: - pull_request - name: deploy image: rust:latest commands: - apt-get update - apt-get -y install libgtk-3-dev libxcb-shape0-dev libxcb-xfixes0-dev - cargo build --release - tar cvzf abacus-linux-amd64.tar.gz -C target/release abacus - cargo install cargo-deb - cargo deb -p abacus-ui -o target/release/abacus-amd64.deb - wget https://dl.min.io/client/mc/release/linux-amd64/mc - chmod +x mc - ./mc alias set fivesigma https://objects.5sigma.io $MINIOID $MINIOSECRET - ./mc cp abacus-linux-amd64.tar.gz fivesigma/public/abacus/abacus-linux-amd64.tar.gz - ./mc cp target/release/abacus-amd64.deb fivesigma/public/abacus/abacus-amd64.deb when: event: - promote target: - staging - production --- kind: pipeline name: windows-build type: exec platform: os: windows arch: amd64 trigger: event: include: - promote - pull_request steps: - name: test commands: - rustup default stable - cargo test when: event: - pull_request - name: deploy commands: - rustup default stable - mc alias set fivesigma https://objects.5sigma.io $MINIOID $MINIOSECRET - cargo build --release --target=x86_64-pc-windows-msvc - mc cp target\x86_64-pc-windows-msvc\release\abacus.exe fivesigma/public/abacus/abacus.exe when: event: - promote target: - staging - production