52 lines
1.1 KiB
YAML
52 lines
1.1 KiB
YAML
stages:
|
|
- check
|
|
- build
|
|
- release
|
|
|
|
check:
|
|
stage: check
|
|
tags:
|
|
- nix
|
|
script:
|
|
- nix flake check
|
|
- TAG=$(date +%Y.%m.%d).$CI_COMMIT_SHORT_SHA
|
|
- echo "TAG=$TAG" > variables.env
|
|
artifacts:
|
|
reports:
|
|
dotenv: variables.env
|
|
|
|
build:
|
|
stage: build
|
|
needs:
|
|
- job: check
|
|
artifacts: true
|
|
tags:
|
|
- nix
|
|
script:
|
|
- nix build -L
|
|
- URL=$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/sword-utils/$TAG/sword-$TAG.tar.xz
|
|
- echo ${URL}
|
|
- 'curl --fail-with-body --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file ./result/sword.tar.xz "${URL}"'
|
|
- echo "X86_TARBALL=${URL}" > build.env
|
|
artifacts:
|
|
reports:
|
|
dotenv: build.env
|
|
|
|
"Create release":
|
|
stage: release
|
|
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
|
needs:
|
|
- job: check
|
|
artifacts: true
|
|
- job: build
|
|
artifacts: true
|
|
script: echo "Tagging as released"
|
|
release:
|
|
name: Release $TAG
|
|
tag_name: '$TAG'
|
|
description: Automatic SWORD utils build for Windows
|
|
assets:
|
|
links:
|
|
- name: Windows (x86-64) release
|
|
url: "${X86_TARBALL}"
|