Resume/.gitlab-ci.yml

53 lines
1.2 KiB
YAML

stages:
- setup
- build
- upload
- release
variables:
PACKAGE_VERSION: "$CI_COMMIT_TAG"
PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/resume"
RESUME_FILE: "resume.pdf"
GIT_DEPTH: 1
build:
stage: build
image: nixos/nix:latest
script: |
nix --extra-experimental-features "flakes nix-command" build
mv "./result/${RESUME_FILE}" $(pwd)
artifacts:
expire_in: 1 week
paths:
- "${RESUME_FILE}"
upload:
stage: upload
needs:
- build
rules:
- if: $CI_COMMIT_TAG
image: curlimages/curl:latest
script:
- 'curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file "${RESUME_FILE}" ${PACKAGE_REGISTRY_URL}/${CI_COMMIT_TAG}/${RESUME_FILE}'
tag-release:
stage: release
needs:
- upload
image: registry.gitlab.com/gitlab-org/release-cli:latest
script:
- echo "Releasing Resume @ ${CI_COMMIT_TAG}"
rules:
- if: $CI_COMMIT_TAG && $CI_COMMIT_TAG != "latest"
release:
tag_name: "${CI_COMMIT_TAG}"
description: "${CI_COMMIT_TAG}"
ref: "${CI_COMMIT_SHA}"
assets:
links:
- name: "${RESUME_FILE}"
url: "${PACKAGE_REGISTRY_URL}/${CI_COMMIT_TAG}/${RESUME_FILE}"
filepath: /resume.pdf
link_type: other