Compare commits

...

2 Commits

Author SHA1 Message Date
Daniel Gröber f0e76b814b Add more checks to makefile
We're trying to prevent clobbering other's changes or forgetting to push
ours.
2022-02-12 20:41:37 +01:00
Daniel Gröber b064468a3d Add non-default ssh key instructions to README 2022-02-12 20:41:37 +01:00
2 changed files with 24 additions and 8 deletions

View File

@ -10,12 +10,27 @@ sign: $(patsubst %,%.sig,$(wildcard *.zone))
.PHONY: check-clean
check-clean:
[ ! -e .git ] || git diff-index --exit-code HEAD
[ ! -e .git ] || \
git ls-files --other --directory --exclude-standard | \
sed -n '/.*\.zone/{p;q1}'
@git diff-index --exit-code HEAD >/dev/null && \
git ls-files --other --directory --exclude-standard | \
sed -n '/.*\.zone/{p;q1}' || { \
printf 'Commit your changes before uploading!\n' >&2; \
git status -s; exit 1; }
upload:
GIT_BRANCH=$(shell git name-rev --name-only HEAD)
GIT_BRANCH_REMOTE=$(shell git config branch.$(GIT_BRANCH).remote)
GIT_BRANCH_MERGE=$(shell git config branch.$(GIT_BRANCH).merge) # remote branch
.PHONY: fetch
check-uptodate: FORCE
git fetch $(GIT_BRANCH_REMOTE) $(GIT_BRANCH_MERGE)
@[ -z "`git rev-list -n1 HEAD@{upstream} --not HEAD`" ] || { \
printf 'Unpulled changes, refusing to upload zones!\n' >&2; \
git log --decorate --oneline --graph -n3 \
HEAD@{upstream} --not HEAD; \
}
.PHONY: upload
upload: check-clean check-uptodate
upload: sign
printf 'put %s\n' *.zone *.sig | \
sftp $(SFTP_FLAGS) zones@ns0.it-syndikat.org:zones/

7
README
View File

@ -20,12 +20,13 @@ this by default, just say'in.
Note: Knot handles DNSSEC signing on the server side.
Using a non-default GPG key
---------------------------
Using a non-default GPG/ssh key
-------------------------------
Create a file `local.mk` and specify GPG_FLAGS as follows:
Create a file `local.mk` and specify GPG_FLAGS and/or SFTP_FLAGS as follows:
```
# local.mk
GPG_FLAGS=--default-key=<YOUR KEY FINGERPRINT>
SFTP_FLAGS=~/.ssh/id_non_default
```