Skip to content

Commit c99f0e3

Browse files
committed
feat(goreleaser): enable shell completions for APT
1 parent c0fbc4b commit c99f0e3

2 files changed

Lines changed: 25 additions & 6 deletions

File tree

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,6 @@ go.work.sum
1616
# Test coverage reports
1717
coverage.out
1818
coverage.html
19+
20+
# Shell completions
21+
completions/

.goreleaser.yaml

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@ version: 2
33
before:
44
hooks:
55
- go mod tidy
6+
# Shell completion files
7+
- mkdir -p ./completions
8+
- sh -c 'go run ./main.go completion zsh > ./completions/stackit.zsh'
9+
- sh -c 'go run ./main.go completion bash > ./completions/stackit.bash'
10+
- sh -c 'go run ./main.go completion fish > ./completions/stackit.fish'
611

712
builds:
813
- id: linux-builds
@@ -47,11 +52,6 @@ builds:
4752
output: true
4853
- cmd: spctl -a -t open --context context:primary-signature -v dist/{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}.dmg
4954
output: true
50-
# Completion files
51-
- cmd: mkdir -p dist/completions
52-
- cmd: sh -c 'go run main.go completion zsh > ./dist/completions/stackit.zsh'
53-
- cmd: sh -c 'go run main.go completion bash > ./dist/completions/stackit.bash'
54-
- cmd: sh -c 'go run main.go completion fish > ./dist/completions/stackit.fish'
5555

5656
- id: freebsd-builds
5757
env:
@@ -74,7 +74,7 @@ archives:
7474
- freebsd-builds
7575
formats: [ 'tar.gz' ]
7676
files:
77-
- src: ./dist/completions/*
77+
- src: ./completions/*
7878
dst: completions
7979
- LICENSE.md
8080
- README.md
@@ -108,6 +108,18 @@ nfpms:
108108
dst: /usr/share/doc/stackit/copyright
109109
file_info:
110110
mode: 0644
111+
- src: ./completions/stackit.bash
112+
dst: /usr/share/bash-completion/completions/stackit
113+
file_info:
114+
mode: 0644
115+
- src: ./completions/stackit.zsh
116+
dst: /usr/share/zsh/vendor-completions/_stackit
117+
file_info:
118+
mode: 0644
119+
- src: ./completions/stackit.fish
120+
dst: /usr/share/fish/vendor_completions.d/stackit.fish
121+
file_info:
122+
mode: 0644
111123
formats:
112124
- deb
113125
- rpm
@@ -155,3 +167,7 @@ snapcrafts:
155167
grade: stable
156168
# Whether to publish the Snap to the store
157169
publish: true
170+
apps:
171+
stackit:
172+
command: stackit
173+
completer: completions/stackit.bash

0 commit comments

Comments
 (0)