From 226857edb50a1d0dd4aabbefeb36d71930978849 Mon Sep 17 00:00:00 2001 From: Kichiyaki Date: Tue, 9 Nov 2021 08:05:01 +0100 Subject: [PATCH] replace circleci with github workflows --- .circleci/config.yml | 29 ---------------------- .github/workflows/publish.yml | 46 +++++++++++++++++++++++++++++++++++ Dockerfile | 2 +- 3 files changed, 47 insertions(+), 30 deletions(-) delete mode 100644 .circleci/config.yml create mode 100644 .github/workflows/publish.yml diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index 07cd5ab..0000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,29 +0,0 @@ -version: 2 -jobs: - build: - docker: - - image: circleci/node:14.18.1-browsers - working_directory: ~/dwysokinski - steps: - - checkout - - setup_remote_docker: - version: 20.10.2 - # start proprietary DB using private Docker image - # with credentials stored in the UI - - run: | - docker login -u $DOCKER_LOGIN -p $DOCKER_PASSWORD - # build the application image - - run: docker build -t $DOCKER_LOGIN/dwysokinski.me:latest . - - # deploy the image - - run: docker push $DOCKER_LOGIN/dwysokinski.me:latest -workflows: - version: 2 - deploy_prod: - jobs: - - build: - context: dockerhub - filters: - branches: - only: - - master diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..938fe7f --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,46 @@ +name: Build and push to registry + +on: + push: + tags: + - '*' + +jobs: + push_to_registry: + name: Push Docker image to Docker Hub + if: startsWith(github.ref, 'refs/tags/v') + runs-on: ubuntu-latest + steps: + - name: Check out the repo + uses: actions/checkout@v2 + + - name: Get the version + id: get_version + run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/v} + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + + - name: Cache Docker layers + uses: actions/cache@v2 + with: + path: /tmp/.buildx-cache + key: ${{ runner.os }}-buildx-${{ github.sha }} + restore-keys: | + ${{ runner.os }}-buildx- + + - name: Login to DockerHub + uses: docker/login-action@v1 + with: + username: ${{ secrets.REGISTRY_LOGIN }} + password: ${{ secrets.REGISTRY_PASSWORD }} + + - name: Push to Docker Hub + uses: docker/build-push-action@v2 + with: + context: . + tags: | + ${{ secrets.REGISTRY_NAME }}/dwysokinski.me:latest + ${{ secrets.REGISTRY_NAME }}/dwysokinski.me:${{ steps.get_version.outputs.VERSION }} + file: ./Dockerfile + push: true diff --git a/Dockerfile b/Dockerfile index 3623c19..e31b42c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -18,7 +18,7 @@ RUN apk --no-cache add shadow \ pkgconf RUN npm install --global gatsby-cli@3.3.0 WORKDIR /usr/src/app -COPY package.json yarn.lock ./ +COPY yarn.lock ./ RUN yarn COPY . ./ RUN yarn build