stages: - check - build - release include: - local: .gitlab/ci/check.yml build: stage: build needs: - job: check artifacts: true parallel: matrix: - ARCH: [x86, ucrt] tags: - nix script: - nix run -L ".#${ARCH}" - ls -l - URL=$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/generic/sword-utils/$TAG/sword-${ARCH}-${TAG}.tar.xz - >- if [ "$CI_PIPELINE_SOURCE" == "tag" ]; then curl -i --fail-with-body --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file ./sword.tar.xz "${URL}" fi - echo "${ARCH}_TARBALL=${URL}" > "build.env.${ARCH}" artifacts: reports: dotenv: build.env.$ARCH "Create release": stage: release image: registry.gitlab.com/gitlab-org/release-cli:latest tags: - docker rules: - if: $CI_PIPELINE_SOURCE == "tag" 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}" - name: Windows (x86-64) release with UCRT url: "${ucrt_TARBALL}"