mirror of
https://codeberg.org/Codeberg/pages-server.git
synced 2024-12-02 18:45:29 +00:00
7092883ebe
Reviewed-on: https://codeberg.org/Codeberg/pages-server/pulls/312 Reviewed-by: crapStone <codeberg@crapstone.dev> Co-authored-by: pat-s <patrick.schratz@gmail.com> Co-committed-by: pat-s <patrick.schratz@gmail.com>
119 lines
2.7 KiB
YAML
119 lines
2.7 KiB
YAML
when:
|
|
branch: main
|
|
event: ["push", "pull_request"]
|
|
|
|
steps:
|
|
# use vendor to cache dependencies
|
|
vendor:
|
|
image: golang:1.21
|
|
commands:
|
|
- go mod vendor
|
|
|
|
lint:
|
|
image: golangci/golangci-lint:latest
|
|
depends_on: vendor
|
|
pull: true
|
|
commands:
|
|
- go version
|
|
- go install mvdan.cc/gofumpt@latest
|
|
- "[ $(gofumpt -extra -l . | wc -l) != 0 ] && { echo 'code not formated'; exit 1; }"
|
|
- golangci-lint run --timeout 5m --build-tags integration
|
|
|
|
editor-config:
|
|
depends_on: []
|
|
image: mstruebing/editorconfig-checker
|
|
|
|
build:
|
|
depends_on: vendor
|
|
image: codeberg.org/6543/docker-images/golang_just
|
|
commands:
|
|
- go version
|
|
- just build
|
|
when:
|
|
event: ["pull_request", "push"]
|
|
|
|
docker-dryrun:
|
|
depends_on: vendor
|
|
image: plugins/kaniko
|
|
settings:
|
|
dockerfile: Dockerfile
|
|
no_push: true
|
|
tags: latest
|
|
when:
|
|
event: ["pull_request", "push"]
|
|
path: Dockerfile
|
|
|
|
build-tag:
|
|
depends_on: vendor
|
|
image: codeberg.org/6543/docker-images/golang_just
|
|
commands:
|
|
- go version
|
|
- just build-tag ${CI_COMMIT_TAG##v}
|
|
when:
|
|
event: ["tag"]
|
|
|
|
test:
|
|
depends_on: build
|
|
image: codeberg.org/6543/docker-images/golang_just
|
|
commands:
|
|
- just test
|
|
|
|
integration-tests:
|
|
depends_on: build
|
|
image: codeberg.org/6543/docker-images/golang_just
|
|
commands:
|
|
- just integration
|
|
environment:
|
|
- ACME_API=https://acme.mock.directory
|
|
- PAGES_DOMAIN=localhost.mock.directory
|
|
- RAW_DOMAIN=raw.localhost.mock.directory
|
|
- PORT=4430
|
|
|
|
release:
|
|
depends_on: build
|
|
image: plugins/gitea-release
|
|
settings:
|
|
base_url: https://codeberg.org
|
|
file_exists: overwrite
|
|
files: build/codeberg-pages-server
|
|
api_key:
|
|
from_secret: bot_token
|
|
environment:
|
|
- CI_REPO_OWNER=${CI_REPO_OWNER}
|
|
- CI_REPO_NAME=${CI_REPO_NAME}
|
|
- CI_BUILD_EVENT=${CI_BUILD_EVENT}
|
|
- CI_COMMIT_REF=${CI_COMMIT_REF}
|
|
when:
|
|
event: ["tag"]
|
|
|
|
docker-next:
|
|
depends_on: vendor
|
|
image: plugins/kaniko
|
|
settings:
|
|
registry: codeberg.org
|
|
dockerfile: Dockerfile
|
|
repo: codeberg.org/codeberg/pages-server
|
|
tags: next
|
|
username:
|
|
from_secret: bot_user
|
|
password:
|
|
from_secret: bot_token
|
|
when:
|
|
event: ["push"]
|
|
branch: ${CI_REPO_DEFAULT_BRANCH}
|
|
|
|
docker-tag:
|
|
depends_on: vendor
|
|
image: plugins/kaniko
|
|
settings:
|
|
registry: codeberg.org
|
|
dockerfile: Dockerfile
|
|
repo: codeberg.org/codeberg/pages-server
|
|
tags: [latest, "${CI_COMMIT_TAG}"]
|
|
username:
|
|
from_secret: bot_user
|
|
password:
|
|
from_secret: bot_token
|
|
when:
|
|
event: ["tag"]
|