fail2ban-prometheus-exporter/.gitlab-ci.yml
Hector 970bbb51d4
ci: publish arm64 based docker images (!108)
* Update `goreleaser` config to publish `arm64` based docker images
* Remove manual image tagging script and replace with `goreleaser` config

https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter/-/merge_requests/108
2023-09-07 20:29:30 +00:00

64 lines
1.2 KiB
YAML

stages:
- test
- build
- release
.go_template:
image: golang:latest
sast:
stage: test
include:
- template: Security/SAST.gitlab-ci.yml
- template: Security/Dependency-Scanning.gitlab-ci.yml
format:
extends: .go_template
stage: test
script:
- make check/fmt
vet:
extends: .go_template
stage: test
allow_failure: true
script:
- make vet
test:
extends: .go_template
stage: test
script:
- make test
build:
extends: .go_template
stage: build
script:
- make build
artifacts:
paths:
- fail2ban_exporter
expire_in: 1 day
release:
stage: release
image: docker:stable
services:
- docker:dind
variables:
DOCKER_REGISTRY: $CI_REGISTRY
DOCKER_USERNAME: $CI_REGISTRY_USER
DOCKER_PASSWORD: $CI_REGISTRY_PASSWORD
GIT_DEPTH: 0
rules:
- if: $CI_COMMIT_TAG =~ /^v.*$/
script: |
docker run --rm --privileged \
-v $PWD:/go/src/gitlab.com/hectorjsmith/fail2ban-prometheus-exporter \
-w /go/src/gitlab.com/hectorjsmith/fail2ban-prometheus-exporter \
-v /var/run/docker.sock:/var/run/docker.sock \
-e DOCKER_USERNAME -e DOCKER_PASSWORD -e DOCKER_REGISTRY \
-e GITLAB_TOKEN \
goreleaser/goreleaser release --clean