31 lines
786 B
YAML
31 lines
786 B
YAML
stages:
|
|
- build
|
|
- release
|
|
|
|
image: archlinux/archlinux:base-devel
|
|
|
|
# Build stage to generate ISO
|
|
archiso:
|
|
stage: build
|
|
script:
|
|
- ./build.sh
|
|
rules:
|
|
- if: $CI_COMMIT_TAG # Only run on new tag
|
|
|
|
# Release stage to create a GitLab release and upload ISO
|
|
release:
|
|
stage: release
|
|
script:
|
|
- echo "Creating GitLab release for tag $CI_COMMIT_TAG"
|
|
- |
|
|
curl --header "PRIVATE-TOKEN: $CI_JOB_TOKEN" \
|
|
--data "name=Release $CI_COMMIT_TAG&tag_name=$CI_COMMIT_TAG&ref=$CI_COMMIT_SHA" \
|
|
--upload-file "out/*.iso" \
|
|
"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/releases"
|
|
rules:
|
|
- if: $CI_COMMIT_TAG # Only run on new tag
|
|
dependencies:
|
|
- archiso # Get the built ISO from the previous job
|
|
only:
|
|
- tags # Only trigger on tags
|
|
|