main Makefile
Eric Bower  ·  2026-02-25
 1DOCKER_TAG?=$(shell git log --format="%H" -n 1)
 2DOCKER_PLATFORM?=linux/amd64,linux/arm64
 3DOCKER_BUILDX_BUILD?=docker buildx build --push --platform $(DOCKER_PLATFORM) -t
 4
 5fmt:
 6	go fmt ./...
 7.PHONY: fmt
 8
 9lint:
10	golangci-lint run
11.PHONY: lint
12
13test:
14	go test ./...
15.PHONY: test
16
17check: fmt lint test
18.PHONY: check
19
20snapshot:
21	UPDATE_SNAPS=true go test ./...
22.PHONY: snapshot
23
24build:
25	go build -o ./build/patchbin ./cmd/patchbin
26.PHONY: build
27
28bp-setup:
29	docker buildx ls | grep pico || docker buildx create --name pico
30	docker buildx use pico
31.PHONY: bp-setup
32
33bp: bp-setup
34	$(DOCKER_BUILDX_BUILD) ghcr.io/picosh/patchbin:$(DOCKER_TAG) --target release .
35.PHONY: bp
36
37smol:
38	curl https://pico.sh/smol.css -o ./static/smol.css
39.PHONY: smol
40
41backup:
42	scp pico.ash.3:git-pr/data/git-pr/data/pr.db ./data/prod.db
43.PHONY: backup