restic/Makefile

45 lines
1.2 KiB
Makefile
Raw Permalink Normal View History

2023-04-17 11:33:20 +00:00
.PHONY: default build clean release require_clean_git
2023-04-12 14:47:01 +00:00
-include .env
VERSION=20230411
2023-04-17 11:33:20 +00:00
IMAGENAME=restic
2023-04-17 17:43:44 +00:00
REPO=git.rre.nu/jonas
2023-04-12 14:47:01 +00:00
2023-04-18 11:29:16 +00:00
BUILD_TIME := $(shell TZ=UTC date --iso-8601=ns)
2023-04-12 14:47:01 +00:00
SHELL := /bin/bash
2023-04-17 11:33:20 +00:00
require_clean_git:
git update-index -q --ignore-submodules --refresh
git diff-files --quiet --ignore-submodules
git diff-index --cached --quiet --ignore-submodules HEAD --
@status=$$(git status --porcelain); \
if test "x$${status}" = x; then \
echo "No untracked files detected"; \
else \
echo "Untracked files detected" >&2; \
exit 1; \
fi
2023-04-12 15:02:55 +00:00
2023-04-12 14:47:01 +00:00
default: build
build:
2023-04-18 11:29:16 +00:00
podman build \
--build-arg VERSION=$(VERSION) \
--build-arg BUILD_TIME=${BUILD_TIME} \
--tag docker.io/bardak/restic:$(VERSION) \
.
2023-04-12 14:47:01 +00:00
2023-04-12 15:02:55 +00:00
clean:
podman image rm docker.io/bardak/restic:$(VERSION)
2023-04-17 11:33:20 +00:00
release: require_clean_git build
2023-04-17 12:21:03 +00:00
$(eval TMP_MESSAGE := $(shell podman run --rm -it ${REPO}/${IMAGENAME}:$(VERSION) /usr/bin/restic --version))
git tag -a v$(VERSION) -m "restic version: ${TMP_MESSAGE}"
2023-04-17 11:33:20 +00:00
git push origin v$(VERSION)
podman tag ${REPO}/${IMAGENAME}:$(VERSION) ${REPO}/${IMAGENAME}:latest
podman push --creds $(USERNAME):$(PASSWORD) ${REPO}/${IMAGENAME}:$(VERSION)
podman push --creds $(USERNAME):$(PASSWORD) ${REPO}/${IMAGENAME}:latest