mirror of
https://gitlab.melroy.org/melroy/fediresolve.git
synced 2025-06-07 20:08:57 +00:00
61 lines
1.1 KiB
YAML
61 lines
1.1 KiB
YAML
default:
|
|
image: golang:1.24
|
|
|
|
cache:
|
|
key:
|
|
files:
|
|
- go.mod
|
|
paths:
|
|
- .go/pkg/mod/
|
|
|
|
variables:
|
|
GOPATH: $CI_PROJECT_DIR/.go
|
|
|
|
stages:
|
|
- test
|
|
- build
|
|
- release
|
|
|
|
format:
|
|
stage: test
|
|
script:
|
|
- go fmt $(go list ./... | grep -v /vendor/)
|
|
- go vet $(go list ./... | grep -v /vendor/)
|
|
|
|
go-mod-tidy:
|
|
stage: test
|
|
script:
|
|
- go mod tidy -diff
|
|
|
|
build:
|
|
stage: build
|
|
script:
|
|
- go build
|
|
- echo "ARTIFACT_URL=${CI_PROJECT_URL}/-/jobs/${CI_JOB_ID}/artifacts/file/fediresolve" >> variables.env
|
|
artifacts:
|
|
paths:
|
|
- fediresolve
|
|
reports:
|
|
dotenv: variables.env
|
|
expire_in: 1 week
|
|
|
|
release:
|
|
stage: release
|
|
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
|
needs:
|
|
- job: build
|
|
artifacts: true
|
|
rules:
|
|
- if: $CI_COMMIT_TAG
|
|
script:
|
|
- echo "running release_job for $CI_COMMIT_TAG"
|
|
release:
|
|
name: "Release $CI_COMMIT_TAG"
|
|
description: 'Created using the release-cli'
|
|
tag_name: $CI_COMMIT_TAG
|
|
ref: '$CI_COMMIT_SHA'
|
|
assets:
|
|
links:
|
|
- name: 'FediResolve'
|
|
url: ${ARTIFACT_URL}
|
|
filepath: '/assets/fediresolve'
|