Files
ratatoskr-go/Makefile
Hermes 8fcafcdffd
All checks were successful
CI / test (push) Successful in 42s
CI / build-and-package (amd64, darwin) (push) Successful in 39s
CI / build-and-package (amd64, linux) (push) Successful in 42s
CI / build-and-package (amd64, windows) (push) Successful in 41s
CI / build-and-package (arm64, darwin) (push) Successful in 48s
CI / build-and-package (arm64, linux) (push) Successful in 47s
feat(update): владелец пакета вшивается в бинарь
- -X main.updateOwner (из vars.TC_GITEA_OWNER / Make UPDATE_OWNER), фоллбэк на update.owner в конфиге.
- update.owner больше не обязателен: гейты в startAutoCheck и handleUpdateCmd требуют только update.base_url.
- Обновлены main, app.New (сигнатура), CI, Makefile, тесты.
2026-08-16 12:33:17 +05:00

43 lines
1.1 KiB
Makefile

.PHONY: all build test vet clean run fmt
APP := ratatoskr
CMD_DIR := ./cmd/ratatoskr
GO ?= go
GOPATH := $(shell $(GO) env GOPATH)
GIT_SHA := $(shell git rev-parse --short HEAD 2>/dev/null || echo dev)
UPDATE_TOKEN ?= ""
UPDATE_OWNER ?= ""
GOFLAGS ?= -ldflags="-s -w -X main.version=commit-$(GIT_SHA) -X main.updateToken=$(UPDATE_TOKEN) -X main.updateOwner=$(UPDATE_OWNER)"
all: test build
build:
$(GO) build $(GOFLAGS) -o $(APP) $(CMD_DIR)
test:
$(GO) test ./... -v -count=1 -timeout 120s
vet:
$(GO) vet ./...
fmt:
$(GO) fmt ./...
run: build
./$(APP) -config config.yaml
clean:
rm -f $(APP)
rm -rf /tmp/ratatoskr-*
.PHONY: bench
bench:
$(GO) test ./... -bench=. -benchmem -count=1 -timeout 120s
.PHONY: cross
cross:
GOOS=linux GOARCH=amd64 $(GO) build $(GOFLAGS) -o $(APP)-linux-amd64 $(CMD_DIR)
GOOS=linux GOARCH=arm64 $(GO) build $(GOFLAGS) -o $(APP)-linux-arm64 $(CMD_DIR)
GOOS=darwin GOARCH=amd64 $(GO) build $(GOFLAGS) -o $(APP)-darwin-amd64 $(CMD_DIR)
GOOS=darwin GOARCH=arm64 $(GO) build $(GOFLAGS) -o $(APP)-darwin-arm64 $(CMD_DIR)
GOOS=windows GOARCH=amd64 $(GO) build $(GOFLAGS) -o $(APP)-windows-amd64.exe $(CMD_DIR)