From a99bc5be512f007f74feb693852451e016662044 Mon Sep 17 00:00:00 2001 From: Moulick Aggarwal Date: Mon, 11 Oct 2021 21:37:51 +0530 Subject: [PATCH] Try add github actions for docker build and switch to buildah for gitlab --- .github/workflows/docker-build.yml | 35 ++++++++++++++++++++++++++ .gitlab-ci.yml | 40 ++++++++++++++---------------- 2 files changed, 54 insertions(+), 21 deletions(-) create mode 100644 .github/workflows/docker-build.yml diff --git a/.github/workflows/docker-build.yml b/.github/workflows/docker-build.yml new file mode 100644 index 0000000..0329a75 --- /dev/null +++ b/.github/workflows/docker-build.yml @@ -0,0 +1,35 @@ +name: ci + +on: + push: + branches: + - 'master' + +jobs: + docker: + runs-on: ubuntu-latest + steps: + - + name: Checkout + uses: actions/checkout@v2 + - + name: Set up QEMU + uses: docker/setup-qemu-action@v1 + - + name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - + name: Login to DockerHub + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - + name: Build and push + uses: docker/build-push-action@v2 + with: + context: . + push: true + tags: moulick/debug-image:latest + cache-from: type=registry,ref=moulick/debug-image:buildcache + cache-to: type=registry,ref=moulick/debug-image:buildcache,mode=max diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b481b03..9900edf 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,25 +1,23 @@ -docker-build-master: - image: docker:latest - stage: build - services: - - docker:dind - before_script: - - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY - script: - - docker build --pull -t "$CI_REGISTRY_IMAGE" . - - docker push "$CI_REGISTRY_IMAGE" - only: - - master -docker-build: - image: docker:latest +stages: + - build + +default: + tags: + - kubernetes + +buildah-build: stage: build - services: - - docker:dind + variables: + STORAGE_DRIVER: vfs + image: + name: quay.io/buildah/stable:latest before_script: - - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY + - buildah login -u "$CI_REGISTRY_USER" -p "$CI_JOB_TOKEN" "$CI_REGISTRY" script: - - docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" . - - docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" - except: - - master + - buildah bud + -t "${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHA}" + -f Dockerfile + - buildah tag "${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHA}" "${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}" + - buildah push "${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHA}" + - buildah push "${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}"