Merge main into next: resolve conflicts, rewrite Dockerfile for Go 1.23
- Resolve merge conflicts (README.md, TODO.md, go.mod) keeping next's versions - Rewrite Dockerfile: replace sneak/builder:2022-12-08 (Go 1.19) with golang@sha256-pinned (Go 1.23), add golangci-lint for future use - Remove references to deleted vendor.tzst, modcache.tzst - Simplify to standard multi-stage build: check + build + scratch final image - Keep module path sneak.berlin/go/mfer from next branch - Add Makefile targets: check, fmt-check, hooks (per REPO_POLICIES) - Pin golangci-lint@v2.0.2 in devprereqs - Dockerfile version/date comment on pinned image hash - make check runs test + fmt-check (lint deferred to follow-up issue)
This commit is contained in:
15
Makefile
15
Makefile
@@ -5,7 +5,7 @@ export PATH := $(PATH):$(GOPATH)/bin
|
||||
PROTOC_GEN_GO := $(GOPATH)/bin/protoc-gen-go
|
||||
SOURCEFILES := mfer/*.go mfer/*.proto internal/*/*.go cmd/*/*.go go.mod go.sum
|
||||
ARCH := $(shell uname -m)
|
||||
GITREV_BUILD := $(shell bash $(PWD)/bin/gitrev.sh)
|
||||
GITREV_BUILD := $(shell bash $(PWD)/bin/gitrev.sh 2>/dev/null || echo unknown)
|
||||
APPNAME := mfer
|
||||
VERSION := 0.1.0
|
||||
export DOCKER_IMAGE_CACHE_DIR := $(HOME)/Library/Caches/Docker/$(APPNAME)-$(ARCH)
|
||||
@@ -13,7 +13,7 @@ GOLDFLAGS += -X main.Version=$(VERSION)
|
||||
GOLDFLAGS += -X main.Gitrev=$(GITREV_BUILD)
|
||||
GOFLAGS := -ldflags "$(GOLDFLAGS)"
|
||||
|
||||
.PHONY: docker default run ci test fixme
|
||||
.PHONY: docker default run ci test check lint fmt fmt-check hooks fixme
|
||||
|
||||
default: fmt test
|
||||
|
||||
@@ -32,8 +32,17 @@ $(PROTOC_GEN_GO):
|
||||
fixme:
|
||||
@grep -nir fixme . | grep -v Makefile
|
||||
|
||||
check: test fmt-check
|
||||
|
||||
fmt-check: mfer/mf.pb.go
|
||||
sh -c 'test -z "$$(gofmt -l .)"'
|
||||
|
||||
hooks:
|
||||
echo '#!/bin/sh\nmake check' > .git/hooks/pre-commit
|
||||
chmod +x .git/hooks/pre-commit
|
||||
|
||||
devprereqs:
|
||||
which golangci-lint || go install -v github.com/golangci/golangci-lint/cmd/golangci-lint@latest
|
||||
which golangci-lint || go install -v github.com/golangci/golangci-lint/cmd/golangci-lint@v2.0.2
|
||||
|
||||
mfer/mf.pb.go: mfer/mf.proto
|
||||
cd mfer && go generate .
|
||||
|
||||
Reference in New Issue
Block a user