feat: added a pipeline
This commit is contained in:
parent
2162c4a824
commit
92ebe3b931
1 changed files with 86 additions and 0 deletions
86
.gitlab-ci.yml
Normal file
86
.gitlab-ci.yml
Normal file
|
@ -0,0 +1,86 @@
|
|||
# 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
|
||||
rules:
|
||||
- if: $CI_COMMIT_TAG
|
||||
when: never
|
||||
- changes:
|
||||
- src/**/*
|
||||
- cargo.*
|
||||
when: always
|
||||
|
||||
lint-fmt:
|
||||
stage: lint
|
||||
script:
|
||||
- rustup component add rustfmt
|
||||
- rustc --version
|
||||
- cargo version
|
||||
- cargo fmt -- --check
|
||||
rules:
|
||||
- if: $CI_COMMIT_TAG
|
||||
when: never
|
||||
- changes:
|
||||
- src/**/*
|
||||
- cargo.*
|
||||
when: always
|
||||
|
||||
|
||||
# has to actually compile
|
||||
build:
|
||||
stage: build
|
||||
script:
|
||||
- rustc --version
|
||||
- cargo version
|
||||
- cargo build --verbose
|
||||
- RUST_BACKTRACE=1 cargo test --verbose
|
||||
rules:
|
||||
- if: $CI_COMMIT_TAG
|
||||
when: never
|
||||
- changes:
|
||||
- src/**/*
|
||||
- cargo.*
|
||||
when: on_success
|
||||
|
||||
|
||||
# from https://docs.gitlab.com/ee/ci/pipelines/multi_project_pipelines.html
|
||||
# so simple to deploy now
|
||||
nixos:
|
||||
stage: deploy
|
||||
variables:
|
||||
PACKAGE_NAME: "skynet_discord_bot"
|
||||
UPDATE_FLAKE: "yes"
|
||||
trigger: compsoc1/skynet/nixos
|
||||
rules:
|
||||
- if: $CI_COMMIT_TAG
|
||||
when: never
|
||||
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||
when: on_success
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in a new issue