mirror of
https://jihulab.com/DGP-Studio/Snap.Hutao.git
synced 2025-11-19 21:02:53 +08:00
78 lines
2.3 KiB
YAML
78 lines
2.3 KiB
YAML
stages:
|
|
- fetch
|
|
- release
|
|
- refresh
|
|
|
|
Fetch:
|
|
stage: fetch
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
tags:
|
|
- us3
|
|
script:
|
|
- apt-get update -qy
|
|
- apt-get install -y curl jq
|
|
- RELEASE_INFO=$(curl -sSL "https://api.github.com/repos/$CI_PROJECT_PATH/releases/latest")
|
|
- ASSET_URL=$(echo "$RELEASE_INFO" | jq -r '.assets[] | select(.name | endswith(".msix")) | .browser_download_url')
|
|
- SHA256SUMS_URL=$(echo "$RELEASE_INFO" | jq -r '.assets[] | select(.name == "SHA256SUMS") | .browser_download_url')
|
|
- curl -LJO "$ASSET_URL"
|
|
- curl -LJO "$SHA256SUMS_URL"
|
|
- FILE_NAME=$(basename "$ASSET_URL")
|
|
- SHA256SUMS_NAME=$(basename "$SHA256SUMS_URL")
|
|
- echo "File name at script stage is $FILE_NAME"
|
|
- echo "SHA256SUMS name at script stage is $SHA256SUMS_NAME"
|
|
- echo "THIS_FILE_NAME=$FILE_NAME" >> next.env
|
|
- echo "THIS_SHA256SUMS_NAME=$SHA256SUMS_NAME" >> next.env
|
|
after_script:
|
|
- echo "Current Job ID is $CI_JOB_ID"
|
|
- echo "THIS_JOB_ID=$CI_JOB_ID" >> next.env
|
|
artifacts:
|
|
paths:
|
|
- "*.msix"
|
|
- "SHA256SUMS"
|
|
expire_in: 180 days
|
|
reports:
|
|
dotenv: next.env
|
|
|
|
release:
|
|
stage: release
|
|
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
needs:
|
|
- job: Fetch
|
|
artifacts: true
|
|
variables:
|
|
TAG: '$CI_COMMIT_TAG'
|
|
script:
|
|
- echo "Create Release $TAG"
|
|
- echo "$THIS_JOB_ID"
|
|
- echo "$THIS_FILE_NAME"
|
|
release:
|
|
name: '$TAG'
|
|
tag_name: '$TAG'
|
|
ref: '$TAG'
|
|
description: 'Release $TAG by CI'
|
|
assets:
|
|
links:
|
|
- name: "$THIS_FILE_NAME"
|
|
url: "https://$CI_SERVER_SHELL_SSH_HOST/$CI_PROJECT_PATH/-/jobs/$THIS_JOB_ID/artifacts/raw/$THIS_FILE_NAME?inline=false"
|
|
link_type: package
|
|
- name: "$THIS_SHA256SUMS_NAME"
|
|
url: "https://$CI_SERVER_SHELL_SSH_HOST/$CI_PROJECT_PATH/-/jobs/$THIS_JOB_ID/artifacts/raw/$THIS_SHA256SUMS_NAME?inline=false"
|
|
link_type: other
|
|
- name: "artifact_archive"
|
|
url: "https://$CI_SERVER_SHELL_SSH_HOST/$CI_PROJECT_PATH/-/jobs/$THIS_JOB_ID/artifacts/download?file_type=archive"
|
|
link_type: other
|
|
|
|
Refresh:
|
|
stage: refresh
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
needs:
|
|
- job: release
|
|
script:
|
|
- apt-get install -y curl
|
|
- curl -X PATCH "$PURGE_URL"
|
|
- curl -X POST -o /dev/null "$UPLOAD_OSS_URL"
|