--- stages: - test - release .go_template_defaults: stage: test .semver_template_defaults: stage: release include: - { project: fsrvcorp/templates, file: templates/language/go.yml, ref: 1.0.12 } - { project: fsrvcorp/templates, file: templates/release/semver.yml, ref: 1.0.12 } packages: stage: release image: goreleaser/goreleaser@sha256:fdb44c129c09afe4625a817b672885ab820f57bcbedf9b1ae08fabf88cdc7691 script: - git reset --hard $CI_COMMIT_SHA - git clean -ffdx - | if [ -n "$CI_COMMIT_TAG" ]; then goreleaser release --skip publish --clean else goreleaser release --skip publish --clean --snapshot fi artifacts: paths: - dist/*.deb expire_in: 1 week deb mirror: stage: release image: alpine@sha256:4b7ce07002c69e8f3d704a9c5d6fd3053be500b7f1c69fc0d80990c2ad8dd412 only: - tags dependencies: - packages needs: - packages before_script: - apk add --no-cache ca-certificates curl script: - | for file in dist/*.deb; do URL="$(curl --upload-file ${file} https://t.fsrv.xyz)" curl -X POST --fail -F token=$CI_JOB_TOKEN -F "variables[PACKAGE_URL]=${URL}" -F ref=main https://ref.ci/api/v4/projects/185/trigger/pipeline done