# copied a good chunk from my bfom config image: rust:latest stages: - lint - build - deploy cache: key: "$CI_JOB_NAME" paths: - target/ # Set any required environment variables here variables: RUST_BACKTRACE: FULL # clippy and fmt are magic # runs on all commits/branches lint-clippy: stage: lint script: - rustup component add clippy - rustc --version - cargo version - cargo clippy only: changes: - src/* - cargo.* lint-fmt: stage: lint script: - rustup component add rustfmt - rustc --version - cargo version - cargo fmt -- --check only: changes: - src/* - cargo.* # has to actually compile build: stage: build script: - rustc --version - cargo version - cargo build --verbose - RUST_BACKTRACE=1 cargo test --verbose only: changes: - src/* - cargo.* # from https://docs.gitlab.com/ee/ci/pipelines/multi_project_pipelines.html # so simple to deploy now nixos: stage: deploy variables: PACKAGE_NAME: "skynet_ldap_backend" UPDATE_FLAKE: "yes" trigger: compsoc1/skynet/nixos rules: - if: $CI_COMMIT_TAG when: never - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH when: on_success