40 lines
993 B
YAML
40 lines
993 B
YAML
stages:
|
|
- Build
|
|
- Release
|
|
|
|
variables:
|
|
PACKAGE_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/lirkab-site/${CI_COMMIT_TAG}/lirkab-site.zip"
|
|
|
|
"Build":
|
|
stage: Build
|
|
image: node:alpine
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
script:
|
|
- npm ci
|
|
- npm run build
|
|
- apk add --no-cache zip curl
|
|
- cd dist && zip -r ../lirkab-site.zip . && cd ..
|
|
- 'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file lirkab-site.zip "${PACKAGE_URL}"'
|
|
artifacts:
|
|
paths:
|
|
- dist/
|
|
expire_in: 1 week
|
|
|
|
"Create Release":
|
|
stage: Release
|
|
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
script:
|
|
- echo "Creating permanent release for tag $CI_COMMIT_TAG"
|
|
release:
|
|
name: "Release $CI_COMMIT_TAG"
|
|
description: "Automated release of the Lirkab static site."
|
|
tag_name: "$CI_COMMIT_TAG"
|
|
ref: "$CI_COMMIT_TAG"
|
|
assets:
|
|
links:
|
|
- name: "Compiled Site (ZIP)"
|
|
url: "$PACKAGE_URL"
|