--- 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.14 } - { project: fsrvcorp/templates, file: templates/release/semver.yml, ref: 1.0.14 } packages: stage: release image: goreleaser/goreleaser@sha256:d417ee0cb74e8ccb4ca4c10e40a663849b56bb437e6dab410e0053800dcc0514 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:51183f2cfa6320055da30872f211093f9ff1d3cf06f39a0bdb212314c5dc7375 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