feat: build talosctl for ARM64

This adds an ARM64 build of `talosctl`.

Signed-off-by: Andrew Rynhard <andrew@andrewrynhard.com>
This commit is contained in:
Andrew Rynhard 2020-03-21 14:27:03 -07:00
parent 68b912e64c
commit 43662e4a24
3 changed files with 16 additions and 3 deletions

View File

@ -3458,6 +3458,7 @@ steps:
- _out/installer.tar
- _out/talosctl-darwin-amd64
- _out/talosctl-linux-amd64
- _out/talosctl-linux-arm64
- _out/vmware.ova
- _out/vmlinux
- _out/vmlinuz
@ -3572,6 +3573,6 @@ depends_on:
---
kind: signature
hmac: de88d1e74755b71883afb67e12dea17205b75e9ec462837f035257292ffbe805
hmac: 16c7e32ef2ca8687136040290ea9f3e1b74c54d3ec103c908fc1cea2d38858c0
...

View File

@ -217,7 +217,7 @@ RUN --security=insecure img build --tag ${USERNAME}/routerd:${TAG} --output type
# The talosctl targets build the talosctl binaries.
FROM base AS talosctl-linux-build
FROM base AS talosctl-linux-amd64-build
ARG SHA
ARG TAG
ARG ARTIFACTS
@ -227,8 +227,19 @@ WORKDIR /src/cmd/talosctl
RUN --mount=type=cache,target=/.cache/go-build GOOS=linux GOARCH=amd64 go build -ldflags "-s -w -X ${VERSION_PKG}.Name=Client -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG} -X ${MGMT_HELPERS_PKG}.ArtifactsPath=${ARTIFACTS}" -o /talosctl-linux-amd64
RUN chmod +x /talosctl-linux-amd64
FROM base AS talosctl-linux-arm64-build
ARG SHA
ARG TAG
ARG ARTIFACTS
ARG VERSION_PKG="github.com/talos-systems/talos/pkg/version"
ARG MGMT_HELPERS_PKG="github.com/talos-systems/talos/cmd/talosctl/pkg/mgmt/helpers"
WORKDIR /src/cmd/talosctl
RUN --mount=type=cache,target=/.cache/go-build GOOS=linux GOARCH=arm64 go build -ldflags "-s -w -X ${VERSION_PKG}.Name=Client -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG} -X ${MGMT_HELPERS_PKG}.ArtifactsPath=${ARTIFACTS}" -o /talosctl-linux-arm64
RUN chmod +x /talosctl-linux-arm64
FROM scratch AS talosctl-linux
COPY --from=talosctl-linux-build /talosctl-linux-amd64 /talosctl-linux-amd64
COPY --from=talosctl-linux-amd64-build /talosctl-linux-amd64 /talosctl-linux-amd64
COPY --from=talosctl-linux-arm64-build /talosctl-linux-arm64 /talosctl-linux-arm64
FROM base AS talosctl-darwin-build
ARG SHA

View File

@ -428,6 +428,7 @@ local release = {
'_out/installer.tar',
'_out/talosctl-darwin-amd64',
'_out/talosctl-linux-amd64',
'_out/talosctl-linux-arm64',
'_out/vmware.ova',
'_out/vmlinux',
'_out/vmlinuz',