From 05853825d874859a04a58fcb4ec8d7b9b0cbab76 Mon Sep 17 00:00:00 2001 From: Lev Date: Tue, 8 Feb 2022 11:35:52 +0300 Subject: [PATCH] build: Change bench target names and move CI to separate workflow (#655) * Change bench target names and move CI to separate workflow * Fix file detection --- .github/workflows/build_bench.yml | 46 +++++++++++++++++++++++++++++ .github/workflows/build_develop.yml | 33 +-------------------- build/bench/Dockerfile | 4 +-- docker-bake.hcl | 12 ++++---- 4 files changed, 55 insertions(+), 40 deletions(-) create mode 100644 .github/workflows/build_bench.yml diff --git a/.github/workflows/build_bench.yml b/.github/workflows/build_bench.yml new file mode 100644 index 00000000..b2f55fae --- /dev/null +++ b/.github/workflows/build_bench.yml @@ -0,0 +1,46 @@ +name: Bench + +on: + pull_request: + branches: + - main + paths: + - build/bench/** + - docker-bake.hcl + + schedule: + # Every day at 12:00 pm + - cron: 0 0 * * * + + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Setup Buildx + uses: docker/setup-buildx-action@v1 + + - name: Build and test + uses: docker/bake-action@v1.6.0 + with: + files: docker-bake.hcl + targets: bench-test + + - name: Login + if: ${{ github.repository == 'frappe/frappe_docker' && github.event_name != 'pull_request' }} + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Push + if: ${{ github.repository == 'frappe/frappe_docker' && github.event_name != 'pull_request' }} + uses: docker/bake-action@v1.6.0 + with: + targets: bench + files: docker-bake.hcl + push: true diff --git a/.github/workflows/build_develop.yml b/.github/workflows/build_develop.yml index 3e3cc9a1..3d0320ad 100644 --- a/.github/workflows/build_develop.yml +++ b/.github/workflows/build_develop.yml @@ -23,38 +23,7 @@ env: IS_AUTHORIZED_RUN: ${{ github.repository == 'frappe/frappe_docker' && github.event_name != 'pull_request' }} jobs: - build_bench: - name: Bench - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v2 - - - name: Setup Buildx - uses: docker/setup-buildx-action@v1 - - - name: Login - uses: docker/login-action@v1 - if: env.IS_AUTHORIZED_RUN == 'true' - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Build and test - uses: docker/bake-action@v1.6.0 - with: - files: docker-bake.hcl - targets: bench-test - - - name: Push - uses: docker/bake-action@v1.6.0 - if: env.IS_AUTHORIZED_RUN == 'true' - with: - files: docker-bake.hcl - targets: bench-build - push: true - - build_main: + build: name: Frappe & ERPNext runs-on: ubuntu-latest services: diff --git a/build/bench/Dockerfile b/build/bench/Dockerfile index 89feb145..a963425e 100644 --- a/build/bench/Dockerfile +++ b/build/bench/Dockerfile @@ -1,4 +1,4 @@ -FROM debian:bullseye-slim as build +FROM debian:bullseye-slim as bench LABEL author=frappé @@ -125,7 +125,7 @@ RUN wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | EXPOSE 8000-8005 9000-9005 6787 -FROM build as test +FROM bench as bench-test # Print version and verify bashrc is properly sourced so that everything works # in the interactive shell and Dockerfile diff --git a/docker-bake.hcl b/docker-bake.hcl index 39379284..51f69ba3 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -2,17 +2,17 @@ # Reference: https://github.com/docker/buildx/blob/master/docs/reference/buildx_bake.md -# Bench images +# Bench image -target "bench-build" { +target "bench" { + context = "build/bench" + target = "bench" tags = ["frappe/bench:latest"] - dockerfile = "build/bench/Dockerfile" - target = "build" } target "bench-test" { - inherits = ["bench-build"] - target = "test" + inherits = ["bench"] + target = "bench-test" } # Main images