From db2fc03c631bfba67d4ecf63da51cd6f41a85520 Mon Sep 17 00:00:00 2001 From: Dan Meruelo Date: Thu, 22 Jul 2021 22:22:20 -0400 Subject: [PATCH] update the makefile to push multi-arch images --- .circleci/config.yml | 13 ++++++++++++- Dockerfile | 4 ++++ Makefile | 23 ++++++++++++++++------- 3 files changed, 32 insertions(+), 8 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 380007e5..7cd470f9 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -42,7 +42,12 @@ jobs: <<: *defaults steps: - *attach_workspace - - setup_remote_docker + - setup_remote_docker: + version: 18.09.3 + - run: mkdir -vp ~/.docker/cli-plugins/ + - run: curl --silent -L --output ~/.docker/cli-plugins/docker-buildx https://github.com/docker/buildx/releases/download/v0.3.1/buildx-v0.3.1.linux-amd64 + - run: chmod a+x ~/.docker/cli-plugins/docker-buildx + - run: docker buildx version - run: name: push sso-dev commit tag command: | @@ -55,6 +60,12 @@ jobs: <<: *defaults steps: - *attach_workspace + - setup_remote_docker: + version: 18.09.3 + - run: mkdir -vp ~/.docker/cli-plugins/ + - run: curl --silent -L --output ~/.docker/cli-plugins/docker-buildx https://github.com/docker/buildx/releases/download/v0.3.1/buildx-v0.3.1.linux-amd64 + - run: chmod a+x ~/.docker/cli-plugins/docker-buildx + - run: docker buildx version - setup_remote_docker - run: name: push sso-dev latest tag diff --git a/Dockerfile b/Dockerfile index 0625ac03..faa9b3d7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -24,6 +24,10 @@ RUN cd cmd/sso-proxy/generate-request-signature && go build -mod=readonly -o /bi # add static assets and copy binaries from build stage # ============================================================================= FROM debian:stable-slim +RUN ln -s /usr/bin/dpkg-split /usr/sbin/dpkg-split +RUN ln -s /usr/bin/dpkg-deb /usr/sbin/dpkg-deb +RUN ln -s /bin/tar /usr/sbin/tar +RUN ln -s /bin/rm /usr/sbin/rm RUN apt-get update && apt-get install -y ca-certificates curl && rm -rf /var/lib/apt/lists/* \ && groupadd -r sso && useradd -r -g sso sso WORKDIR /sso diff --git a/Makefile b/Makefile index 654bfc7e..ebf55342 100644 --- a/Makefile +++ b/Makefile @@ -26,16 +26,25 @@ clean: rm -r dist imagepush-commit: - docker build -t buzzfeed/sso-dev:$(commit) . - docker push buzzfeed/sso-dev:$(commit) + docker context create sso-dev + docker buildx create sso-dev --name sso-dev + docker buildx use sso-dev + docker buildx build --tag buzzfeed/sso-dev:$(commit) . --platform linux/amd64,linux/arm64,linux/arm/v7 --push + docker buildx rm sso-dev imagepush-latest: - docker build -t buzzfeed/sso-dev:latest . - docker push buzzfeed/sso-dev:latest + docker context create sso-dev + docker buildx create sso-dev --name sso-dev + docker buildx use sso-dev + docker buildx build --tag buzzfeed/sso-dev:latest . --platform linux/amd64,linux/arm64,linux/arm/v7 --push + docker buildx rm sso-dev releasepush: - docker build -t buzzfeed/sso:$(version) -t buzzfeed/sso-dev:latest . - docker push buzzfeed/sso:$(version) - docker push buzzfeed/sso:latest + docker context create sso-dev + docker buildx create sso-dev --name sso-dev + docker buildx use sso-dev + docker buildx build --tag buzzfeed/sso:$(version) . --platform linux/amd64,linux/arm64,linux/arm/v7 --push + docker buildx build --tag buzzfeed/sso:latest . --platform linux/amd64,linux/arm64,linux/arm/v7 --push + docker buildx rm sso-dev .PHONY: dist/sso-auth dist/sso-proxy tools