From b68d93e995dc7b9b6c3b1c3ac13f4d634cb46385 Mon Sep 17 00:00:00 2001 From: George Pollard Date: Fri, 18 Jun 2021 07:33:49 +0000 Subject: [PATCH 1/4] Add weekly build of Devcontainer --- .../workflows/build-devcontainer-image.yml | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .github/workflows/build-devcontainer-image.yml diff --git a/.github/workflows/build-devcontainer-image.yml b/.github/workflows/build-devcontainer-image.yml new file mode 100644 index 00000000000..4cfd3fcbe08 --- /dev/null +++ b/.github/workflows/build-devcontainer-image.yml @@ -0,0 +1,38 @@ +name: Build Devcontainer image +on: + schedule: + # 5:30 pm every Sunday (UTC) + - cron: '30 17 * * 7' + +jobs: + # Based on: https://docs.github.com/en/actions/guides/publishing-docker-images#publishing-images-to-github-packages + build-devcontainer-image: + runs-on: ubuntu-latest + + permissions: + packages: write + contents: read + + steps: + - name: Checkout code + uses: actions/checkout@v2 + with: + submodules: 'true' + + - name: Log in to GitHub Docker Registry + uses: docker/login-action@v1 + with: + registry: docker.pkg.github.com + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN } + + - name: Build & push Devcontainer image + uses: docker/build-push-action@v2 + with: + context: .devcontainer + push: true + # Build an image usable as cache-from, per: https://docs.docker.com/engine/reference/commandline/build/#specifying-external-cache-sources + build-args: BUILDKIT_INLINE_CACHE=1 + tags: | + docker.pkg.github.com/${{ github.repository }}/devcontainer:latest + docker.pkg.github.com/${{ github.repository }}/devcontainer:${{ github.sha }} From 98a4c3ed3fdc152f9003be46927077d123eae3b2 Mon Sep 17 00:00:00 2001 From: George Pollard Date: Fri, 18 Jun 2021 07:36:21 +0000 Subject: [PATCH 2/4] Allow manual triggering --- .github/workflows/build-devcontainer-image.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/build-devcontainer-image.yml b/.github/workflows/build-devcontainer-image.yml index 4cfd3fcbe08..3142c57ba7f 100644 --- a/.github/workflows/build-devcontainer-image.yml +++ b/.github/workflows/build-devcontainer-image.yml @@ -1,5 +1,7 @@ name: Build Devcontainer image on: + workflow_dispatch: + # no content, allows manual triggering schedule: # 5:30 pm every Sunday (UTC) - cron: '30 17 * * 7' From cc8376820011977ce37ea217611bae8795b85cc2 Mon Sep 17 00:00:00 2001 From: George Pollard Date: Sun, 20 Jun 2021 21:42:45 +0000 Subject: [PATCH 3/4] Also run on master merges --- .github/workflows/build-devcontainer-image.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/build-devcontainer-image.yml b/.github/workflows/build-devcontainer-image.yml index 3142c57ba7f..6ab1268ea3a 100644 --- a/.github/workflows/build-devcontainer-image.yml +++ b/.github/workflows/build-devcontainer-image.yml @@ -2,10 +2,19 @@ name: Build Devcontainer image on: workflow_dispatch: # no content, allows manual triggering + schedule: # 5:30 pm every Sunday (UTC) + # to pick up any important bug fixes etc in base image - cron: '30 17 * * 7' + push: + # run when changes pushed to master if any devcontainer files changed + branches: + - master + paths: + - .devcontainer/** + jobs: # Based on: https://docs.github.com/en/actions/guides/publishing-docker-images#publishing-images-to-github-packages build-devcontainer-image: From e83c74d62439c7907b5e76e5a9a2ffa9cde0375f Mon Sep 17 00:00:00 2001 From: George Pollard Date: Mon, 21 Jun 2021 10:24:01 +1200 Subject: [PATCH 4/4] Update build-devcontainer-image.yml --- .github/workflows/build-devcontainer-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-devcontainer-image.yml b/.github/workflows/build-devcontainer-image.yml index 6ab1268ea3a..c10e1543363 100644 --- a/.github/workflows/build-devcontainer-image.yml +++ b/.github/workflows/build-devcontainer-image.yml @@ -6,7 +6,7 @@ on: schedule: # 5:30 pm every Sunday (UTC) # to pick up any important bug fixes etc in base image - - cron: '30 17 * * 7' + - cron: '30 17 * * 0' push: # run when changes pushed to master if any devcontainer files changed