2023-02-10 03:00:14 +00:00 | | | CGO_FLAGS := '-extldflags "-static" -linkmode external' |
| | | TAGS := 'sqlite sqlite_unlock_notify netgo' |
| | | |
2021-11-20 15:31:10 +01:00 | | | dev: |
| | | #!/usr/bin/env bash |
| | | set -euxo pipefail |
| | | export ACME_API=https://acme.mock.directory |
| | | export ACME_ACCEPT_TERMS=true |
| | | export PAGES_DOMAIN=localhost.mock.directory |
| | | export RAW_DOMAIN=raw.localhost.mock.directory |
| | | export PORT=4430 |
2023-02-14 02:23:28 +00:00 | | | export HTTP_PORT=8880 |
| | | export ENABLE_HTTP_SERVER=true |
2022-08-12 05:24:05 +02:00 | | | export LOG_LEVEL=trace |
2023-02-10 03:00:14 +00:00 | | | go run -tags '{{TAGS}}' . |
2021-11-20 21:43:12 +01:00 | | | |
| | | build: |
2023-02-10 03:00:14 +00:00 | | | CGO_ENABLED=1 go build -tags '{{TAGS}}' -ldflags '-s -w {{CGO_FLAGS}}' -v -o build/codeberg-pages-server ./ |
2022-05-10 18:13:14 +02:00 | | | |
2022-06-14 20:35:11 +02:00 | | | build-tag VERSION: |
2023-02-10 03:00:14 +00:00 | | | CGO_ENABLED=1 go build -tags '{{TAGS}}' -ldflags '-s -w -X "codeberg.org/codeberg/pages/server/version.Version={{VERSION}}" {{CGO_FLAGS}}' -v -o build/codeberg-pages-server ./ |
2022-06-14 20:35:11 +02:00 | | | |
2022-05-10 18:13:14 +02:00 | | | lint: tool-golangci tool-gofumpt |
2022-06-11 23:17:43 +02:00 | | | golangci-lint run --timeout 5m --build-tags integration |
2022-11-11 23:51:45 +01:00 | | | # TODO: run editorconfig-checker |
2022-05-10 18:13:14 +02:00 | | | |
2022-06-11 23:02:06 +02:00 | | | fmt: tool-gofumpt |
| | | gofumpt -w --extra . |
| | | |
2022-07-15 21:21:26 +02:00 | | | clean: |
| | | go clean ./... |
2023-02-11 02:04:57 +00:00 | | | rm -rf build/ integration/certs.sqlite integration/acme-account.json |
2022-07-15 21:21:26 +02:00 | | | |
2022-05-10 18:13:14 +02:00 | | | tool-golangci: |
| | | @hash golangci-lint> /dev/null 2>&1; if [ $? -ne 0 ]; then \ |
2022-05-30 23:55:37 +02:00 | | | go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest; \ |
2022-05-10 18:13:14 +02:00 | | | fi |
| | | |
| | | tool-gofumpt: |
| | | @hash gofumpt> /dev/null 2>&1; if [ $? -ne 0 ]; then \ |
| | | go install mvdan.cc/gofumpt@latest; \ |
| | | fi |
2022-06-13 14:43:49 +02:00 | | | |
| | | test: |
2023-02-10 03:00:14 +00:00 | | | go test -race -cover -tags '{{TAGS}}' codeberg.org/codeberg/pages/server/... codeberg.org/codeberg/pages/html/ |
2022-06-13 14:43:49 +02:00 | | | |
2022-06-14 20:35:11 +02:00 | | | test-run TEST: |
2023-02-10 03:00:14 +00:00 | | | go test -race -tags '{{TAGS}}' -run "^{{TEST}}$" codeberg.org/codeberg/pages/server/... codeberg.org/codeberg/pages/html/ |
2022-06-14 20:35:11 +02:00 | | | |
2022-06-13 14:43:49 +02:00 | | | integration: |
2023-02-10 03:00:14 +00:00 | | | go test -race -tags 'integration {{TAGS}}' codeberg.org/codeberg/pages/integration/... |
2022-06-14 20:35:11 +02:00 | | | |
| | | integration-run TEST: |
2023-02-10 03:00:14 +00:00 | | | go test -race -tags 'integration {{TAGS}}' -run "^{{TEST}}$" codeberg.org/codeberg/pages/integration/... |
2023-02-13 20:14:45 +00:00 | | | |
| | | docker: |
| | | docker run --rm -it --user $(id -u) -v $(pwd):/work --workdir /work -e HOME=/work codeberg.org/6543/docker-images/golang_just |