Add CI pipeline
This commit is contained in:
parent
17283a9d9b
commit
b2cd7e66ce
1 changed files with 57 additions and 0 deletions
57
.gitlab-ci.yml
Normal file
57
.gitlab-ci.yml
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
image: 3.10.8-slim-buster
|
||||||
|
|
||||||
|
.deploy:
|
||||||
|
rules:
|
||||||
|
# Regex magic copied from Neshura/page-test, only deploys on x.y.z or higher (x.y) Tags
|
||||||
|
- if: $CI_COMMIT_TAG =~ /^((([\d])+\.){1,2}[\d]+)\s*$/ && $CI_COMMIT_TAG
|
||||||
|
|
||||||
|
stages:
|
||||||
|
- build
|
||||||
|
- release
|
||||||
|
|
||||||
|
## Docker steps
|
||||||
|
|
||||||
|
build:
|
||||||
|
image: rust:bullseye
|
||||||
|
stage: build
|
||||||
|
|
||||||
|
variables:
|
||||||
|
IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_BRANCH
|
||||||
|
CACHING:
|
||||||
|
|
||||||
|
script:
|
||||||
|
- echo "Compiling the code..."
|
||||||
|
- cargo build -r
|
||||||
|
- echo "Compile complete."
|
||||||
|
|
||||||
|
after_script:
|
||||||
|
- echo JOB_ID=$CI_JOB_ID >> job.env
|
||||||
|
- mkdir ./artifacts
|
||||||
|
- cp /builds/Neshura/ascendance-of-a-bookworm-bot/target/release/ascendance-of-a-bookworm-bot ./artifacts/
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
paths:
|
||||||
|
- ./artifacts/
|
||||||
|
reports:
|
||||||
|
dotenv: job.env
|
||||||
|
|
||||||
|
rules:
|
||||||
|
- !reference [.deploy, rules]
|
||||||
|
|
||||||
|
Tag Release:
|
||||||
|
needs:
|
||||||
|
- job: build
|
||||||
|
artifacts: true
|
||||||
|
stage: release
|
||||||
|
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
||||||
|
rules:
|
||||||
|
- !reference [.deploy, rules]
|
||||||
|
script:
|
||||||
|
- echo "running Release Job, attaching Artifact from Job $JOB_ID"
|
||||||
|
release:
|
||||||
|
tag_name: '$CI_COMMIT_TAG'
|
||||||
|
description: '$CI_COMMIT_TAG'
|
||||||
|
assets:
|
||||||
|
links:
|
||||||
|
- name: "ascendance-of-a-bookworm-bot.zip"
|
||||||
|
url: "https://gitlab.neshweb.net/Neshura/ascendance-of-a-bookworm-bot/-/jobs/$JOB_ID/artifacts/download"
|
Loading…
Reference in a new issue