9
9
10
10
tasks :
11
11
install :
12
+ desc : Install development dependencies (swagger, mockery, gofumpt, golangci-lint)
12
13
cmds :
13
14
- cmd : go install github.com/go-swagger/go-swagger/cmd/swagger@latest
14
15
-
cmd :
go install github.com/vektra/mockery/[email protected]
15
16
-
cmd :
go install mvdan.cc/[email protected]
16
17
-
cmd :
go install github.com/daixiang0/[email protected]
17
18
- cmd : curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/HEAD/install.sh | sh -s -- -b $(go env GOPATH)/bin v2.3.0
18
- - cmd : echo "PATH=$PATH"
19
- - cmd : echo "GOPATH=$GOPATH"
20
19
21
20
generate :
21
+ desc : Generate code and mocks
22
22
cmds :
23
23
- cmd : go generate -x -v ./...
24
- - cmd : echo "PATH=$PATH"
25
- - cmd : echo "GOPATH=$GOPATH"
26
24
- task : generate-mocks
25
+ - task : setup-node-folder
27
26
28
27
generate-mocks :
28
+ desc : Generate mock files using mockery
29
29
cmds :
30
30
- cmd : mockery
31
31
32
32
generate-test-data :
33
+ desc : Generate test data for database tests
33
34
cmds :
34
35
- cmd : go run int/db/test_data/generate_test_data.go
35
36
36
37
setup-node-folder :
38
+ desc : Setup node binaries for different platforms (mainnet and buildnet)
37
39
cmds :
38
40
- cmd : scripts/setup-node-unix.sh {{.MAINNET_VERSION}} {{.BUILDNET_VERSION}} {{.MAINNET_NODEBIN}} {{.BUILDNET_NODEBIN}} {{.NODE_MASSA_DIR}}
39
41
platforms : [linux, darwin]
78
80
# This task is used to setup windows node binaries in linux environment.
79
81
# It is used in github action workflow ci
80
82
ci-setup-windows-node-with-unix :
83
+ desc : Setup Windows node binaries in Linux CI environment
81
84
platforms : [linux]
82
85
cmds :
83
86
- cmd : scripts/ci-setup-node-from-linux.sh {{.MAINNET_VERSION}} {{.BUILDNET_VERSION}} {{.NODE_MASSA_DIR}}
@@ -86,14 +89,14 @@ tasks:
86
89
BUILDNET_NODEBIN : " massa_{{.BUILDNET_VERSION}}_release_windows.zip"
87
90
88
91
run :
92
+ desc : Run the built application in standalone mode
89
93
cmds :
90
94
- cmd : ./build/node-manager-plugin
91
95
env :
92
96
STANDALONE : 1
93
97
LOG_LEVEL : DEBUG
94
98
95
99
build-backend :
96
- build :
97
100
desc : Internal build task
98
101
cmds :
99
102
- cmd : ' echo Building node-manager {{.APP_NAME}} for $GOOS/$GOARCH'
@@ -114,19 +117,22 @@ tasks:
114
117
VERSION : " {{.VERSION | default nil}}"
115
118
116
119
build-frontend :
120
+ desc : Build the web frontend
117
121
dir : web
118
122
cmds :
119
123
- cmd : npm run build{{.BUILD_MODE}}
120
124
vars :
121
125
BUILD_MODE : ' {{if eq .STANDALONE 1}}:standalone{{end}}'
122
126
123
127
build :
128
+ desc : Build both frontend and backend
124
129
cmds :
125
130
- task : build-frontend
126
131
- task : build-backend
127
132
128
133
129
134
build-standalone :
135
+ desc : Build in standalone mode (frontend and backend)
130
136
cmds :
131
137
- task : build-frontend
132
138
vars :
@@ -135,10 +141,12 @@ tasks:
135
141
136
142
137
143
clean :
144
+ desc : Clean build artifacts, node_modules and generated files
138
145
cmds :
139
146
- cmd : rm -rf build && rm -rf web/node_modules && rm -rf int/api/html/dist
140
147
141
148
install-plugin :
149
+ desc : Install the plugin to MassaStation (platform-specific paths)
142
150
cmds :
143
151
- cmd : mkdir -p /usr/local/share/massastation/plugins/node-manager-plugin
144
152
platforms : [linux, darwin]
@@ -163,14 +171,17 @@ tasks:
163
171
platforms : [windows]
164
172
165
173
test :
174
+ desc : Run Go tests for all packages
166
175
cmds :
167
176
- cmd : go test ./...
168
177
169
178
lint :
179
+ desc : Run golangci-lint for code quality checks
170
180
cmds :
171
181
- cmd : golangci-lint run
172
182
173
183
fmt :
184
+ desc : Format code (go mod tidy, gofumpt, gci, lint --fix, npm fmt)
174
185
cmds :
175
186
- cmd : go mod tidy
176
187
- cmd : gofumpt -l -w .
0 commit comments