Skip to content

Commit 6a819fb

Browse files
committed
prerelease task
1 parent 19612b4 commit 6a819fb

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

Taskfile.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,31 @@ tasks:
4646
- git tag {{.tag}}
4747
- git push origin {{.tag}}
4848
preconditions:
49+
- sh: 'echo "{{.tag}}" | grep -Eq "^v[0-9]+\.[0-9]+\.[0-9]+$"'
50+
msg: "tag {{.tag}} must be a release formatted: v0.0.0 (use release:pre for prereleases)"
4951
- sh: '[ -z "$(git ls-remote --tags origin refs/tags/{{.tag}})" ]'
5052
msg: "tag {{.tag}} already exists on remote"
5153
- sh: '[ "$(git branch --show-current)" = "main" ]'
5254
msg: make sure you're on main
5355

56+
release:pre:
57+
desc: release a new cli prerelease version
58+
aliases: [prerelease]
59+
deps:
60+
- release:check
61+
requires:
62+
vars:
63+
- tag
64+
cmds:
65+
- git pull --rebase
66+
- git tag {{.tag}}
67+
- git push origin {{.tag}}
68+
preconditions:
69+
- sh: 'echo "{{.tag}}" | grep -Eq "^v[0-9]+\.[0-9]+\.[0-9]+-[0-9A-Za-z.-]+$"'
70+
msg: "tag {{.tag}} must be prerelease formatted: v0.0.0-some-tag"
71+
- sh: '[ -z "$(git ls-remote --tags origin refs/tags/{{.tag}})" ]'
72+
msg: "tag {{.tag}} already exists on remote"
73+
5474
release:local:
5575
desc: build with goreleaser
5676
dotenv: [.env.macos-signing]

0 commit comments

Comments
 (0)