-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathJustfile
37 lines (31 loc) · 1.22 KB
/
Justfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
set ignore-comments := true
set shell := ["zsh", "+o", "nomatch", "-ecu"]
set unstable := true
set script-interpreter := ["zsh", "+o", "nomatch", "-eu"]
_default:
@just --list --unsorted
[private]
[doc('Block execution if Git working tree isn’t pristine.')]
pristine:
# Ensure there are no changes in staging
git diff-index --quiet --cached HEAD || exit 1
# Ensure there are no changes in the working tree
git diff-files --quiet || exit 1
[private]
[doc('Block execution if we don’t have access to private keys.')]
keys:
gpg -a --sign > /dev/null <<< "test"
release semver: pristine
sed -i -e "/image:/s/:v.*/:v{{semver}}/" action.yml
make rockspecs/fontproof-{{semver}}-1.rockspec
git add action.yml README.md rockspecs/fontproof-{{semver}}-1.rockspec
git commit -m "chore: Release {{semver}}"
git tag v{{semver}}
git push --atomic upstream master v{{semver}}
luarocks pack rockspecs/fontproof-{{semver}}-1.rockspec
gh release create v{{semver}} -t "FontProof v{{semver}}" fontproof-{{semver}}-1.src.rock
post-release semver: keys
gh release download --clobber v{{semver}}
ls fontproof-{{semver}}-1.src.rock | xargs -n1 gpg -a --detach-sign
gh release upload v{{semver}} fontproof-{{semver}}-1.src.rock.asc
# vim: set ft=just