stages: [build, release] image: 'themackabu/rust:zigbuild-1.79.0-sccache' before_script: - mkdir binary - export CC="/usr/bin/clang" - export CXX="/usr/bin/clang++" build_linux_amd64: stage: build tags: [rust] only: [/\d+\.\d+\.\d+.*$/] script: - cargo zigbuild -r --color always - zip binary/pmc_${CI_COMMIT_TAG}_linux_amd64.zip /usr/local/build/target/release/pmc -j artifacts: paths: [binary/] build_linux_aarch64: stage: build tags: [rust] only: [/\d+\.\d+\.\d+.*$/] script: - cargo zigbuild -r --target aarch64-unknown-linux-gnu --color always - zip binary/pmc_${CI_COMMIT_TAG}_linux_aarch64.zip /usr/local/build/target/aarch64-unknown-linux-gnu/release/pmc -j artifacts: paths: [binary/] build_darwin_amd64: stage: build tags: [rust] only: [/\d+\.\d+\.\d+.*$/] script: - cargo zigbuild -r --target x86_64-apple-darwin --color always - zip binary/pmc_${CI_COMMIT_TAG}_darwin_amd64.zip /usr/local/build/target/x86_64-apple-darwin/release/pmc -j artifacts: paths: [binary/] build_darwin_aarch64: stage: build tags: [rust] only: [/\d+\.\d+\.\d+.*$/] script: - cargo zigbuild -r --target aarch64-apple-darwin --color always - zip binary/pmc_${CI_COMMIT_TAG}_darwin_arm.zip /usr/local/build/target/aarch64-apple-darwin/release/pmc -j artifacts: paths: [binary/]