@@ -16,6 +16,11 @@ version: "3"
1616#
1717# The project MUST contain a LICENSE.txt file in the root folder or packaging will fail.
1818
19+ vars :
20+ CONTAINER : " docker.elastic.co/beats-dev/golang-crossbuild"
21+ GO_VERSION : " 1.16.4"
22+ CHECKSUM_FILE : " {{.VERSION}}-checksums.txt"
23+
1924tasks :
2025 all :
2126 desc : Build for distribution for all platforms
@@ -31,131 +36,131 @@ tasks:
3136
3237 Windows_32bit :
3338 desc : Builds Windows 32 bit binaries
34- dir : " {{ .DIST_DIR }}"
39+ dir : " {{.DIST_DIR}}"
3540 cmds :
3641 - |
3742 docker run -v `pwd`/..:/home/build -w /home/build \
3843 -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}}"
4247
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}}
4550
4651 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}}"
4954 BUILD_PLATFORM : " windows/386"
50- CONTAINER_TAG : " {{ .GO_VERSION }}-main"
55+ CONTAINER_TAG : " {{.GO_VERSION}}-main"
5156 PACKAGE_PLATFORM : " Windows_32bit"
52- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.zip"
57+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.zip"
5358
5459 Windows_64bit :
5560 desc : Builds Windows 64 bit binaries
56- dir : " {{ .DIST_DIR }}"
61+ dir : " {{.DIST_DIR}}"
5762 cmds :
5863 - |
5964 docker run -v `pwd`/..:/home/build -w /home/build \
6065 -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}}"
6469
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}}
6772
6873 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}}"
7176 BUILD_PLATFORM : " windows/amd64"
72- CONTAINER_TAG : " {{ .GO_VERSION }}-main"
77+ CONTAINER_TAG : " {{.GO_VERSION}}-main"
7378 PACKAGE_PLATFORM : " Windows_64bit"
74- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.zip"
79+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.zip"
7580
7681 Linux_32bit :
7782 desc : Builds Linux 32 bit binaries
78- dir : " {{ .DIST_DIR }}"
83+ dir : " {{.DIST_DIR}}"
7984 cmds :
8085 - |
8186 docker run -v `pwd`/..:/home/build -w /home/build \
8287 -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}}"
8691
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}}
8994
9095 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}}"
9398 BUILD_PLATFORM : " linux/386"
94- CONTAINER_TAG : " {{ .GO_VERSION }}-main"
99+ CONTAINER_TAG : " {{.GO_VERSION}}-main"
95100 PACKAGE_PLATFORM : " Linux_32bit"
96- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
101+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
97102
98103 Linux_64bit :
99104 desc : Builds Linux 64 bit binaries
100- dir : " {{ .DIST_DIR }}"
105+ dir : " {{.DIST_DIR}}"
101106 cmds :
102107 - |
103108 docker run -v `pwd`/..:/home/build -w /home/build \
104109 -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}}"
108113
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}}
111116
112117 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}}"
115120 BUILD_PLATFORM : " linux/amd64"
116- CONTAINER_TAG : " {{ .GO_VERSION }}-main"
121+ CONTAINER_TAG : " {{.GO_VERSION}}-main"
117122 PACKAGE_PLATFORM : " Linux_64bit"
118- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
123+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
119124
120125 Linux_ARMv7 :
121126 desc : Builds Linux ARMv7 binaries
122- dir : " {{ .DIST_DIR }}"
127+ dir : " {{.DIST_DIR}}"
123128 cmds :
124129 - |
125130 docker run -v `pwd`/..:/home/build -w /home/build \
126131 -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}}"
130135
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}}
133138
134139 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}}"
137142 BUILD_PLATFORM : " linux/armv7"
138- CONTAINER_TAG : " {{ .GO_VERSION }}-armhf"
143+ CONTAINER_TAG : " {{.GO_VERSION}}-armhf"
139144 PACKAGE_PLATFORM : " Linux_ARMv7"
140- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
145+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
141146
142147 Linux_ARMv6 :
143148 desc : Builds Linux ARMv6 binaries
144- dir : " {{ .DIST_DIR }}"
149+ dir : " {{.DIST_DIR}}"
145150 cmds :
146151 - |
147152 docker run -v `pwd`/..:/home/build -w /home/build \
148153 -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}}"
152157
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}}
155160
156161 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}}"
159164 BUILD_PLATFORM : " linux/armv6"
160165 # We are experiencing the following error with ARMv6 build:
161166 #
@@ -185,49 +190,49 @@ tasks:
185190 #
186191 # Until there is a fix released we must use a recent gcc for Linux_ARMv6 build, so for this
187192 # build we select the debian10 based container.
188- CONTAINER_TAG : " {{ .GO_VERSION }}-armel-debian10"
193+ CONTAINER_TAG : " {{.GO_VERSION}}-armel-debian10"
189194 PACKAGE_PLATFORM : " Linux_ARMv6"
190- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
195+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
191196
192197 Linux_ARM64 :
193198 desc : Builds Linux ARM64 binaries
194- dir : " {{ .DIST_DIR }}"
199+ dir : " {{.DIST_DIR}}"
195200 cmds :
196201 - |
197202 docker run -v `pwd`/..:/home/build -w /home/build \
198203 -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}}"
202207
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}}
205210
206211 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}}"
209214 BUILD_PLATFORM : " linux/arm64"
210- CONTAINER_TAG : " {{ .GO_VERSION }}-arm"
215+ CONTAINER_TAG : " {{.GO_VERSION}}-arm"
211216 PACKAGE_PLATFORM : " Linux_ARM64"
212- PACKAGE_NAME : " {{ .PROJECT_NAME }}_{{ .VERSION }}_{{ .PACKAGE_PLATFORM }}.tar.gz"
217+ PACKAGE_NAME : " {{.PROJECT_NAME}}_{{.VERSION}}_{{.PACKAGE_PLATFORM}}.tar.gz"
213218
214219 macOS_64bit :
215220 desc : Builds Mac OS X 64 bit binaries
216- dir : " {{ .DIST_DIR }}"
221+ dir : " {{.DIST_DIR}}"
217222 cmds :
218223 - |
219224 docker run -v `pwd`/..:/home/build -w /home/build \
220225 -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}}"
224229
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}}
227232
228233 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}}"
231236 BUILD_PLATFORM : " darwin/amd64"
232237 # We are experiencing the following error with macOS_64bit build:
233238 #
@@ -242,11 +247,6 @@ tasks:
242247 #
243248 # To compile it we need an SDK >=10.12 so we use the debian10 based container that
244249 # has the SDK 10.14 installed.
245- CONTAINER_TAG : " {{ .GO_VERSION }}-darwin-debian10"
250+ CONTAINER_TAG : " {{.GO_VERSION}}-darwin-debian10"
246251 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