-
Notifications
You must be signed in to change notification settings - Fork 27
/
ABTaskFile
113 lines (97 loc) · 2.98 KB
/
ABTaskFile
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
name: build_tasks
description: Build Tasks
commands:
- name: dependencies
type: parent
description: Manage dependencies
aliases: [d]
commands:
- name: update
description: Update dependencies
type: exec
aliases: [up]
dir: "{{ AppDir }}"
flags:
- name: verbose
description: Log verbosely
short: v
bool: true
- name: proxy
description: Enable using go proxy
bool: true
default: "true"
script: |
. "{{ BashHelperPath }}"
ab_announce Updating all dependencies
echo
{{ if eq .Flags.proxy false }}
export GOPROXY=direct
ab_say Disabling go mod proxy
{{ end }}
go get -u -n -a -t {{- if .Flags.verbose }} -d -x {{ end }} ./...
ab_say Running go mod tidy
go mod tidy
- name: generate
type: parent
aliases: [gen]
description: Performs 'go generate' tasks
commands:
- name: all
description: Generates all files
type: exec
dir: "{{ AppDir }}"
command: go generate
- name: test
type: parent
aliases: [t]
description: Perform various tests
commands:
- name: unit
type: exec
description: Run ginkgo unit tests
aliases: [u]
arguments:
- name: dir
description: Directory to test
default: .
script: |
set -e
go test ./...
- name: lint
type: exec
dir: "{{ AppDir }}"
flags:
- name: vet
description: Perform go vet
bool: true
default: true
- name: staticcheck
description: Perform staticcheck
bool: true
default: true
- name: update
description: Updates lint dependencies
bool: true
script: |
set -e
. "{{ BashHelperPath }}"
{{ if .Flags.update }}
ab_say Updating linting tools
go install github.com/client9/misspell/cmd/misspell@latest
go install honnef.co/go/tools/cmd/staticcheck@latest
{{ else }}
echo ">>> Run with --update to install required commands"
echo
{{ end }}
ab_say Formatting source files
go fmt ./...
ab_say Tidying go mod
go mod tidy
{{ if .Flags.vet }}
ab_say Performing go vet
go vet ./...
{{ end }}
{{ if .Flags.staticcheck }}
ab_say Running staticcheck
staticcheck -f stylish ./...
{{ end }}