From 8d6a05e2d9c426819f7638c97048733d3810a4c9 Mon Sep 17 00:00:00 2001
From: vx3r <vx3r@127-0-0-1.fr>
Date: Fri, 7 Feb 2020 15:15:39 +0900
Subject: [PATCH] Github workflow to build multi arch docker image, thx to
 zmingxie

---
 .github/workflows/dockerimage.yml | 41 +++++++++++++++++++++++++++++++
 .gitlab-ci.yml                    |  3 +--
 Dockerfile                        |  1 -
 README.md                         |  1 +
 4 files changed, 43 insertions(+), 3 deletions(-)
 create mode 100644 .github/workflows/dockerimage.yml

diff --git a/.github/workflows/dockerimage.yml b/.github/workflows/dockerimage.yml
new file mode 100644
index 0000000..facbe74
--- /dev/null
+++ b/.github/workflows/dockerimage.yml
@@ -0,0 +1,41 @@
+name: Build multi-arch Docker Images via buildx
+
+on:
+  pull_request:
+    branches:
+      - master
+  push:
+    branches:
+      - master
+
+jobs:
+  docker-buildx:
+    runs-on: ubuntu-latest
+    env:
+      DOCKER_IMAGE_NAME: vx3r/wg-gen-web
+    steps:
+      -
+        name: Checkout
+        uses: actions/checkout@v1
+      -
+        name: Build Docker Images Only
+        if: github.event_name == 'pull_request'
+        uses: ilteoood/docker_buildx@master
+        with:
+          publish: false
+          tag: dev
+          dockerFile: ./Dockerfile
+          platform: linux/amd64,linux/arm64,linux/arm/v7
+          imageName: ${{ env.DOCKER_IMAGE_NAME }}
+      -
+        name: Build and Publish Docker Images
+        if: github.event_name == 'push' && github.ref == 'refs/heads/master'
+        uses: ilteoood/docker_buildx@master
+        with:
+          publish: true
+          tag: latest
+          dockerFile: ./Dockerfile
+          platform: linux/amd64,linux/arm64,linux/arm/v7
+          imageName: ${{ env.DOCKER_IMAGE_NAME }}
+          dockerHubUser: ${{ secrets.DOCKER_LOGIN_USERNAME }}
+          dockerHubPassword: ${{ secrets.DOCKER_LOGIN_PASSWORD }}
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3559382..a17c0c5 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -7,7 +7,7 @@ build:
   image: docker:latest
   script:
     - docker info
-    - docker build --network br_docker --tag ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA} --tag ${CI_REGISTRY_IMAGE}:latest .
+    - docker build --network br_docker --tag ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA} .
 
 push:
   stage: push docker hub
@@ -17,4 +17,3 @@ push:
   script:
     - echo ${REGISTRY_PASSWORD} | docker login -u ${CI_REGISTRY_USER} --password-stdin ${CI_REGISTRY}
     - docker push ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA}
-    - docker push ${CI_REGISTRY_IMAGE}:latest
diff --git a/Dockerfile b/Dockerfile
index 2a9cc34..f25fe04 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -8,7 +8,6 @@ WORKDIR /app
 COPY ui/package*.json ./
 RUN npm install
 COPY ui/ ./
-RUN ls -l
 RUN npm run build
 
 FROM alpine
diff --git a/README.md b/README.md
index f1bc557..af50f9c 100644
--- a/README.md
+++ b/README.md
@@ -8,6 +8,7 @@ Simple Web based configuration generator for [WireGuard](https://wireguard.com).
 [![Go Report Card](https://goreportcard.com/badge/github.com/vx3r/wg-gen-web)](https://goreportcard.com/report/github.com/vx3r/wg-gen-web)
 ![Gitlab pipeline status (self-hosted)](https://img.shields.io/gitlab/pipeline/vx3r/wg-gen-web?gitlab_url=https%3A%2F%2Fgitlab.127-0-0-1.fr%2F)
 [![License: WTFPL](https://img.shields.io/badge/License-WTFPL-brightgreen.svg)](http://www.wtfpl.net/about/)
+![Build multi-arch Docker Images via buildx](https://github.com/vx3r/wg-gen-web/workflows/Build%20multi-arch%20Docker%20Images%20via%20buildx/badge.svg)
 ![GitHub last commit](https://img.shields.io/github/last-commit/vx3r/wg-gen-web)
 ![Docker Pulls](https://img.shields.io/docker/pulls/vx3r/wg-gen-web)
 ![GitHub go.mod Go version](https://img.shields.io/github/go-mod/go-version/vx3r/wg-gen-web)
-- 
GitLab