@@ -16,6 +16,11 @@ version: "3"
16
16
#
17
17
# The project MUST contain a LICENSE.txt file in the root folder or packaging will fail.
18
18
19
+ vars :
20
+ CONTAINER : " docker.elastic.co/beats-dev/golang-crossbuild"
21
+ GO_VERSION : " 1.16.4"
22
+ CHECKSUM_FILE : " {{.VERSION}}-checksums.txt"
23
+
19
24
tasks :
20
25
all :
21
26
desc : Build for distribution for all platforms
@@ -31,131 +36,131 @@ tasks:
31
36
32
37
Windows_32bit :
33
38
desc : Builds Windows 32 bit binaries
34
- dir : " {{ .DIST_DIR }}"
39
+ dir : " {{.DIST_DIR}}"
35
40
cmds :
36
41
- |
37
42
docker run -v `pwd`/..:/home/build -w /home/build \
38
43
-e CGO_ENABLED=1 \
39
- {{ .CONTAINER }}:{{ .CONTAINER_TAG }} \
40
- --build-cmd "{{ .BUILD_COMMAND }}" \
41
- -p "{{ .BUILD_PLATFORM }}"
44
+ {{.CONTAINER}}:{{.CONTAINER_TAG}} \
45
+ --build-cmd "{{.BUILD_COMMAND}}" \
46
+ -p "{{.BUILD_PLATFORM}}"
42
47
43
- zip {{ .PACKAGE_NAME}} {{ .PLATFORM_DIR }}/{{ .PROJECT_NAME }}.exe ../LICENSE.txt -j
44
- sha256sum {{ .PACKAGE_NAME }} >> {{ .CHECKSUM_FILE }}
48
+ zip {{.PACKAGE_NAME}} {{.PLATFORM_DIR}}/{{.PROJECT_NAME}}.exe ../LICENSE.txt -j
49
+ sha256sum {{.PACKAGE_NAME}} >> {{.CHECKSUM_FILE}}
45
50
46
51
vars :
47
- PLATFORM_DIR : " {{ .PROJECT_NAME }}_windows_386"
48
- BUILD_COMMAND : " go build -o {{ .DIST_DIR }}/{{ .PLATFORM_DIR }}/{{ .PROJECT_NAME }}.exe {{ .LDFLAGS }}"
52
+ PLATFORM_DIR : " {{.PROJECT_NAME}}_windows_386"
53
+ BUILD_COMMAND : " go build -o {{.DIST_DIR}}/{{.PLATFORM_DIR}}/{{.PROJECT_NAME}}.exe {{.LDFLAGS}}"
49
54
BUILD_PLATFORM : " windows/386"
50
- CONTAINER_TAG : " {{ .GO_VERSION }}-main"
55
+ CONTAINER_TAG : " {{.GO_VERSION}}-main"
51
56
PACKAGE_PLATFORM : " Windows_32bit"
52
- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.zip"
57
+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.zip"
53
58
54
59
Windows_64bit :
55
60
desc : Builds Windows 64 bit binaries
56
- dir : " {{ .DIST_DIR }}"
61
+ dir : " {{.DIST_DIR}}"
57
62
cmds :
58
63
- |
59
64
docker run -v `pwd`/..:/home/build -w /home/build \
60
65
-e CGO_ENABLED=1 \
61
- {{ .CONTAINER }}:{{ .CONTAINER_TAG }} \
62
- --build-cmd "{{ .BUILD_COMMAND }}" \
63
- -p "{{ .BUILD_PLATFORM }}"
66
+ {{.CONTAINER}}:{{.CONTAINER_TAG}} \
67
+ --build-cmd "{{.BUILD_COMMAND}}" \
68
+ -p "{{.BUILD_PLATFORM}}"
64
69
65
- zip {{ .PACKAGE_NAME}} {{ .PLATFORM_DIR }}/{{ .PROJECT_NAME }}.exe ../LICENSE.txt -j
66
- sha256sum {{ .PACKAGE_NAME }} >> {{ .CHECKSUM_FILE }}
70
+ zip {{.PACKAGE_NAME}} {{.PLATFORM_DIR}}/{{.PROJECT_NAME}}.exe ../LICENSE.txt -j
71
+ sha256sum {{.PACKAGE_NAME}} >> {{.CHECKSUM_FILE}}
67
72
68
73
vars :
69
- PLATFORM_DIR : " {{ .PROJECT_NAME }}_windows_amd64"
70
- BUILD_COMMAND : " go build -o {{ .DIST_DIR }}/{{ .PLATFORM_DIR }}/{{ .PROJECT_NAME }}.exe {{ .LDFLAGS }}"
74
+ PLATFORM_DIR : " {{.PROJECT_NAME}}_windows_amd64"
75
+ BUILD_COMMAND : " go build -o {{.DIST_DIR}}/{{.PLATFORM_DIR}}/{{.PROJECT_NAME}}.exe {{.LDFLAGS}}"
71
76
BUILD_PLATFORM : " windows/amd64"
72
- CONTAINER_TAG : " {{ .GO_VERSION }}-main"
77
+ CONTAINER_TAG : " {{.GO_VERSION}}-main"
73
78
PACKAGE_PLATFORM : " Windows_64bit"
74
- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.zip"
79
+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.zip"
75
80
76
81
Linux_32bit :
77
82
desc : Builds Linux 32 bit binaries
78
- dir : " {{ .DIST_DIR }}"
83
+ dir : " {{.DIST_DIR}}"
79
84
cmds :
80
85
- |
81
86
docker run -v `pwd`/..:/home/build -w /home/build \
82
87
-e CGO_ENABLED=1 \
83
- {{ .CONTAINER }}:{{ .CONTAINER_TAG }} \
84
- --build-cmd "{{ .BUILD_COMMAND }}" \
85
- -p "{{ .BUILD_PLATFORM }}"
88
+ {{.CONTAINER}}:{{.CONTAINER_TAG}} \
89
+ --build-cmd "{{.BUILD_COMMAND}}" \
90
+ -p "{{.BUILD_PLATFORM}}"
86
91
87
- tar cz -C {{ .PLATFORM_DIR }} {{ .PROJECT_NAME }} -C ../.. LICENSE.txt -f {{ .PACKAGE_NAME }}
88
- sha256sum {{ .PACKAGE_NAME }} >> {{ .CHECKSUM_FILE }}
92
+ tar cz -C {{.PLATFORM_DIR}} {{.PROJECT_NAME}} -C ../.. LICENSE.txt -f {{.PACKAGE_NAME}}
93
+ sha256sum {{.PACKAGE_NAME}} >> {{.CHECKSUM_FILE}}
89
94
90
95
vars :
91
- PLATFORM_DIR : " {{ .PROJECT_NAME }}_linux_amd32"
92
- BUILD_COMMAND : " go build -o {{ .DIST_DIR }}/{{ .PLATFORM_DIR }}/{{ .PROJECT_NAME }} {{ .LDFLAGS }}"
96
+ PLATFORM_DIR : " {{.PROJECT_NAME}}_linux_amd32"
97
+ BUILD_COMMAND : " go build -o {{.DIST_DIR}}/{{.PLATFORM_DIR}}/{{.PROJECT_NAME}} {{.LDFLAGS}}"
93
98
BUILD_PLATFORM : " linux/386"
94
- CONTAINER_TAG : " {{ .GO_VERSION }}-main"
99
+ CONTAINER_TAG : " {{.GO_VERSION}}-main"
95
100
PACKAGE_PLATFORM : " Linux_32bit"
96
- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
101
+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
97
102
98
103
Linux_64bit :
99
104
desc : Builds Linux 64 bit binaries
100
- dir : " {{ .DIST_DIR }}"
105
+ dir : " {{.DIST_DIR}}"
101
106
cmds :
102
107
- |
103
108
docker run -v `pwd`/..:/home/build -w /home/build \
104
109
-e CGO_ENABLED=1 \
105
- {{ .CONTAINER }}:{{ .CONTAINER_TAG }} \
106
- --build-cmd "{{ .BUILD_COMMAND }}" \
107
- -p "{{ .BUILD_PLATFORM }}"
110
+ {{.CONTAINER}}:{{.CONTAINER_TAG}} \
111
+ --build-cmd "{{.BUILD_COMMAND}}" \
112
+ -p "{{.BUILD_PLATFORM}}"
108
113
109
- tar cz -C {{ .PLATFORM_DIR }} {{ .PROJECT_NAME }} -C ../.. LICENSE.txt -f {{ .PACKAGE_NAME }}
110
- sha256sum {{ .PACKAGE_NAME }} >> {{ .CHECKSUM_FILE }}
114
+ tar cz -C {{.PLATFORM_DIR}} {{.PROJECT_NAME}} -C ../.. LICENSE.txt -f {{.PACKAGE_NAME}}
115
+ sha256sum {{.PACKAGE_NAME}} >> {{.CHECKSUM_FILE}}
111
116
112
117
vars :
113
- PLATFORM_DIR : " {{ .PROJECT_NAME }}_linux_amd64"
114
- BUILD_COMMAND : " go build -o {{ .DIST_DIR }}/{{ .PLATFORM_DIR }}/{{ .PROJECT_NAME }} {{ .LDFLAGS }}"
118
+ PLATFORM_DIR : " {{.PROJECT_NAME}}_linux_amd64"
119
+ BUILD_COMMAND : " go build -o {{.DIST_DIR}}/{{.PLATFORM_DIR}}/{{.PROJECT_NAME}} {{.LDFLAGS}}"
115
120
BUILD_PLATFORM : " linux/amd64"
116
- CONTAINER_TAG : " {{ .GO_VERSION }}-main"
121
+ CONTAINER_TAG : " {{.GO_VERSION}}-main"
117
122
PACKAGE_PLATFORM : " Linux_64bit"
118
- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
123
+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
119
124
120
125
Linux_ARMv7 :
121
126
desc : Builds Linux ARMv7 binaries
122
- dir : " {{ .DIST_DIR }}"
127
+ dir : " {{.DIST_DIR}}"
123
128
cmds :
124
129
- |
125
130
docker run -v `pwd`/..:/home/build -w /home/build \
126
131
-e CGO_ENABLED=1 \
127
- {{ .CONTAINER }}:{{ .CONTAINER_TAG }} \
128
- --build-cmd "{{ .BUILD_COMMAND }}" \
129
- -p "{{ .BUILD_PLATFORM }}"
132
+ {{.CONTAINER}}:{{.CONTAINER_TAG}} \
133
+ --build-cmd "{{.BUILD_COMMAND}}" \
134
+ -p "{{.BUILD_PLATFORM}}"
130
135
131
- tar cz -C {{ .PLATFORM_DIR }} {{ .PROJECT_NAME }} -C ../.. LICENSE.txt -f {{ .PACKAGE_NAME }}
132
- sha256sum {{ .PACKAGE_NAME }} >> {{ .CHECKSUM_FILE }}
136
+ tar cz -C {{.PLATFORM_DIR}} {{.PROJECT_NAME}} -C ../.. LICENSE.txt -f {{.PACKAGE_NAME}}
137
+ sha256sum {{.PACKAGE_NAME}} >> {{.CHECKSUM_FILE}}
133
138
134
139
vars :
135
- PLATFORM_DIR : " {{ .PROJECT_NAME }}_linux_arm_7"
136
- BUILD_COMMAND : " go build -o {{ .DIST_DIR }}/{{ .PLATFORM_DIR }}/{{ .PROJECT_NAME }} {{ .LDFLAGS }}"
140
+ PLATFORM_DIR : " {{.PROJECT_NAME}}_linux_arm_7"
141
+ BUILD_COMMAND : " go build -o {{.DIST_DIR}}/{{.PLATFORM_DIR}}/{{.PROJECT_NAME}} {{.LDFLAGS}}"
137
142
BUILD_PLATFORM : " linux/armv7"
138
- CONTAINER_TAG : " {{ .GO_VERSION }}-armhf"
143
+ CONTAINER_TAG : " {{.GO_VERSION}}-armhf"
139
144
PACKAGE_PLATFORM : " Linux_ARMv7"
140
- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
145
+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
141
146
142
147
Linux_ARMv6 :
143
148
desc : Builds Linux ARMv6 binaries
144
- dir : " {{ .DIST_DIR }}"
149
+ dir : " {{.DIST_DIR}}"
145
150
cmds :
146
151
- |
147
152
docker run -v `pwd`/..:/home/build -w /home/build \
148
153
-e CGO_ENABLED=1 \
149
- {{ .CONTAINER }}:{{ .CONTAINER_TAG }} \
150
- --build-cmd "{{ .BUILD_COMMAND }}" \
151
- -p "{{ .BUILD_PLATFORM }}"
154
+ {{.CONTAINER}}:{{.CONTAINER_TAG}} \
155
+ --build-cmd "{{.BUILD_COMMAND}}" \
156
+ -p "{{.BUILD_PLATFORM}}"
152
157
153
- tar cz -C {{ .PLATFORM_DIR }} {{ .PROJECT_NAME }} -C ../.. LICENSE.txt -f {{ .PACKAGE_NAME }}
154
- sha256sum {{ .PACKAGE_NAME }} >> {{ .CHECKSUM_FILE }}
158
+ tar cz -C {{.PLATFORM_DIR}} {{.PROJECT_NAME}} -C ../.. LICENSE.txt -f {{.PACKAGE_NAME}}
159
+ sha256sum {{.PACKAGE_NAME}} >> {{.CHECKSUM_FILE}}
155
160
156
161
vars :
157
- PLATFORM_DIR : " {{ .PROJECT_NAME }}_linux_arm_6"
158
- BUILD_COMMAND : " go build -o {{ .DIST_DIR }}/{{ .PLATFORM_DIR }}/{{ .PROJECT_NAME }} {{ .LDFLAGS }}"
162
+ PLATFORM_DIR : " {{.PROJECT_NAME}}_linux_arm_6"
163
+ BUILD_COMMAND : " go build -o {{.DIST_DIR}}/{{.PLATFORM_DIR}}/{{.PROJECT_NAME}} {{.LDFLAGS}}"
159
164
BUILD_PLATFORM : " linux/armv6"
160
165
# We are experiencing the following error with ARMv6 build:
161
166
#
@@ -185,49 +190,49 @@ tasks:
185
190
#
186
191
# Until there is a fix released we must use a recent gcc for Linux_ARMv6 build, so for this
187
192
# build we select the debian10 based container.
188
- CONTAINER_TAG : " {{ .GO_VERSION }}-armel-debian10"
193
+ CONTAINER_TAG : " {{.GO_VERSION}}-armel-debian10"
189
194
PACKAGE_PLATFORM : " Linux_ARMv6"
190
- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
195
+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
191
196
192
197
Linux_ARM64 :
193
198
desc : Builds Linux ARM64 binaries
194
- dir : " {{ .DIST_DIR }}"
199
+ dir : " {{.DIST_DIR}}"
195
200
cmds :
196
201
- |
197
202
docker run -v `pwd`/..:/home/build -w /home/build \
198
203
-e CGO_ENABLED=1 \
199
- {{ .CONTAINER }}:{{ .CONTAINER_TAG }} \
200
- --build-cmd "{{ .BUILD_COMMAND }}" \
201
- -p "{{ .BUILD_PLATFORM }}"
204
+ {{.CONTAINER}}:{{.CONTAINER_TAG}} \
205
+ --build-cmd "{{.BUILD_COMMAND}}" \
206
+ -p "{{.BUILD_PLATFORM}}"
202
207
203
- tar cz -C {{ .PLATFORM_DIR }} {{ .PROJECT_NAME }} -C ../.. LICENSE.txt -f {{ .PACKAGE_NAME }}
204
- sha256sum {{ .PACKAGE_NAME }} >> {{ .CHECKSUM_FILE }}
208
+ tar cz -C {{.PLATFORM_DIR}} {{.PROJECT_NAME}} -C ../.. LICENSE.txt -f {{.PACKAGE_NAME}}
209
+ sha256sum {{.PACKAGE_NAME}} >> {{.CHECKSUM_FILE}}
205
210
206
211
vars :
207
- PLATFORM_DIR : " {{ .PROJECT_NAME }}_linux_arm_6"
208
- BUILD_COMMAND : " go build -o {{ .DIST_DIR }}/{{ .PLATFORM_DIR }}/{{ .PROJECT_NAME }} {{ .LDFLAGS }}"
212
+ PLATFORM_DIR : " {{.PROJECT_NAME}}_linux_arm_6"
213
+ BUILD_COMMAND : " go build -o {{.DIST_DIR}}/{{.PLATFORM_DIR}}/{{.PROJECT_NAME}} {{.LDFLAGS}}"
209
214
BUILD_PLATFORM : " linux/arm64"
210
- CONTAINER_TAG : " {{ .GO_VERSION }}-arm"
215
+ CONTAINER_TAG : " {{.GO_VERSION}}-arm"
211
216
PACKAGE_PLATFORM : " Linux_ARM64"
212
- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
217
+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
213
218
214
219
macOS_64bit :
215
220
desc : Builds Mac OS X 64 bit binaries
216
- dir : " {{ .DIST_DIR }}"
221
+ dir : " {{.DIST_DIR}}"
217
222
cmds :
218
223
- |
219
224
docker run -v `pwd`/..:/home/build -w /home/build \
220
225
-e CGO_ENABLED=1 \
221
- {{ .CONTAINER }}:{{ .CONTAINER_TAG }} \
222
- --build-cmd "{{ .BUILD_COMMAND }}" \
223
- -p "{{ .BUILD_PLATFORM }}"
226
+ {{.CONTAINER}}:{{.CONTAINER_TAG}} \
227
+ --build-cmd "{{.BUILD_COMMAND}}" \
228
+ -p "{{.BUILD_PLATFORM}}"
224
229
225
- tar cz -C {{ .PLATFORM_DIR }} {{ .PROJECT_NAME }} -C ../.. LICENSE.txt -f {{ .PACKAGE_NAME }}
226
- sha256sum {{ .PACKAGE_NAME }} >> {{ .CHECKSUM_FILE }}
230
+ tar cz -C {{.PLATFORM_DIR}} {{.PROJECT_NAME}} -C ../.. LICENSE.txt -f {{.PACKAGE_NAME}}
231
+ sha256sum {{.PACKAGE_NAME}} >> {{.CHECKSUM_FILE}}
227
232
228
233
vars :
229
- PLATFORM_DIR : " {{ .PROJECT_NAME }}_osx_darwin_amd64"
230
- BUILD_COMMAND : " go build -o {{ .DIST_DIR }}/{{ .PLATFORM_DIR }}/{{ .PROJECT_NAME }} {{ .LDFLAGS }}"
234
+ PLATFORM_DIR : " {{.PROJECT_NAME}}_osx_darwin_amd64"
235
+ BUILD_COMMAND : " go build -o {{.DIST_DIR}}/{{.PLATFORM_DIR}}/{{.PROJECT_NAME}} {{.LDFLAGS}}"
231
236
BUILD_PLATFORM : " darwin/amd64"
232
237
# We are experiencing the following error with macOS_64bit build:
233
238
#
@@ -242,11 +247,6 @@ tasks:
242
247
#
243
248
# To compile it we need an SDK >=10.12 so we use the debian10 based container that
244
249
# has the SDK 10.14 installed.
245
- CONTAINER_TAG : " {{ .GO_VERSION }}-darwin-debian10"
250
+ CONTAINER_TAG : " {{.GO_VERSION}}-darwin-debian10"
246
251
PACKAGE_PLATFORM : " macOS_64bit"
247
- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
248
-
249
- vars :
250
- CONTAINER : " docker.elastic.co/beats-dev/golang-crossbuild"
251
- GO_VERSION : " 1.16.4"
252
- CHECKSUM_FILE : " {{ .VERSION }}-checksums.txt"
252
+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
0 commit comments