From 4192f9d1565d42f6cd11a60e01b2e5b247782844 Mon Sep 17 00:00:00 2001 From: Sanchari Date: Thu, 4 May 2023 15:46:16 +0200 Subject: [PATCH 1/9] Adding docker image creation for nightly runs --- .github/workflows/nightly_release.yml | 69 +++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/.github/workflows/nightly_release.yml b/.github/workflows/nightly_release.yml index 1268edf1e259..d4485b967be0 100644 --- a/.github/workflows/nightly_release.yml +++ b/.github/workflows/nightly_release.yml @@ -107,3 +107,72 @@ jobs: pip install twine gcloud artifacts print-settings python --project=rasa-releases --repository=rasa --location=europe-west3 > ~/.pypirc twine upload --verbose --repository-url https://europe-west3-python.pkg.dev/rasa-releases/rasa/ ${{ format('{0}/dist/*', github.workspace) }} + + docker: + name: Build Docker + runs-on: ubuntu-22.04 + needs: [changes, build_docker_base_images_and_set_env] + env: + GCLOUD_VERSION: "297.0.1" + # Registry used to store Docker images used for release purposes + RELEASE_REGISTRY: "europe-west3-docker.pkg.dev/rasa-releases" + + steps: + - name: Checkout git repository 🕝 + uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c + + - name: Free disk space + # tries to make sure we do not run out of disk space, see + # https://github.community/t5/GitHub-Actions/BUG-Strange-quot-No-space-left-on-device-quot-IOExceptions-on/td-p/46101 + run: | + sudo swapoff -a + sudo rm -f /swapfile + sudo apt clean + docker rmi $(docker image ls -aq) + df -h + + - name: Read Poetry Version 🔢 + run: | + echo "POETRY_VERSION=$(scripts/poetry-version.sh)" >> $GITHUB_ENV + shell: bash + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@4b4e9c3e2d4531116a6f8ba8e71fc6e2cb6e6c8c + id: buildx + with: + version: v0.5.1 + driver: docker + + - name: Echo Available platforms + run: echo ${{ steps.buildx.outputs.platforms }} + + - name: Copy Segment write key to the package + env: + RASA_TELEMETRY_WRITE_KEY: ${{ secrets.RASA_OSS_TELEMETRY_WRITE_KEY }} + RASA_EXCEPTION_WRITE_KEY: ${{ secrets.RASA_OSS_EXCEPTION_WRITE_KEY }} + run: | + ./scripts/write_keys_file.sh + + - name: Build Docker image + run: | + IMAGE_TAG=${{ needs.run_script_and_tag_nightly_release.outputs.tag_name }} + docker buildx bake -f docker/docker-bake.hcl base + docker buildx bake -f docker/docker-bake.hcl base-builder + docker buildx bake -f docker/docker-bake.hcl default + docker tag rasa/rasa:base-localdev ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} + + # Authenticate and push to the release registry + - id: 'auth-release' + name: Authenticate with gcloud for release registry 🎫 + uses: 'google-github-actions/auth@e8df18b60c5dd38ba618c121b779307266153fbf' + with: + credentials_json: '${{ secrets.RASA_OSS_RELEASE_ACCOUNT_KEY }}' + + - name: Authenticate docker for release registry 🎫 + run: | + # Set up docker to authenticate via gcloud command-line tool. + gcloud auth configure-docker europe-west3-docker.pkg.dev + + - name: Push image to release registry + run: | + docker push ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} From 0c0afc9c4fad901478cafe6a0fdce68f3f4f6cff Mon Sep 17 00:00:00 2001 From: Sanchari Date: Thu, 4 May 2023 16:28:51 +0200 Subject: [PATCH 2/9] Tests --- .github/workflows/continous-integration.yml | 2 ++ .github/workflows/nightly_release.yml | 4 +--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index e3866379b6aa..d6d88fa69436 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -2,6 +2,8 @@ name: Continuous Integration on: push: + branches-ignore: + - nightly_docker branches: - main tags: diff --git a/.github/workflows/nightly_release.yml b/.github/workflows/nightly_release.yml index d4485b967be0..b5a57078f749 100644 --- a/.github/workflows/nightly_release.yml +++ b/.github/workflows/nightly_release.yml @@ -1,8 +1,6 @@ name: Nightly Builds on: - schedule: - # Runs every weekday at 1am - - cron: 0 1 * * 1-5 + pull_request: workflow_dispatch: From ef77c01149c232d6b859f8646c27fcf1850af04f Mon Sep 17 00:00:00 2001 From: Sanchari Date: Thu, 4 May 2023 16:33:03 +0200 Subject: [PATCH 3/9] Fix format issue --- .github/workflows/continous-integration.yml | 2 - .github/workflows/nightly_release.yml | 136 ++++++++++---------- 2 files changed, 68 insertions(+), 70 deletions(-) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index d6d88fa69436..f54ff1ef8e97 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -4,8 +4,6 @@ on: push: branches-ignore: - nightly_docker - branches: - - main tags: - "*" pull_request: diff --git a/.github/workflows/nightly_release.yml b/.github/workflows/nightly_release.yml index b5a57078f749..d20c14603eb6 100644 --- a/.github/workflows/nightly_release.yml +++ b/.github/workflows/nightly_release.yml @@ -106,71 +106,71 @@ jobs: gcloud artifacts print-settings python --project=rasa-releases --repository=rasa --location=europe-west3 > ~/.pypirc twine upload --verbose --repository-url https://europe-west3-python.pkg.dev/rasa-releases/rasa/ ${{ format('{0}/dist/*', github.workspace) }} - docker: - name: Build Docker - runs-on: ubuntu-22.04 - needs: [changes, build_docker_base_images_and_set_env] - env: - GCLOUD_VERSION: "297.0.1" - # Registry used to store Docker images used for release purposes - RELEASE_REGISTRY: "europe-west3-docker.pkg.dev/rasa-releases" - - steps: - - name: Checkout git repository 🕝 - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c - - - name: Free disk space - # tries to make sure we do not run out of disk space, see - # https://github.community/t5/GitHub-Actions/BUG-Strange-quot-No-space-left-on-device-quot-IOExceptions-on/td-p/46101 - run: | - sudo swapoff -a - sudo rm -f /swapfile - sudo apt clean - docker rmi $(docker image ls -aq) - df -h - - - name: Read Poetry Version 🔢 - run: | - echo "POETRY_VERSION=$(scripts/poetry-version.sh)" >> $GITHUB_ENV - shell: bash - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@4b4e9c3e2d4531116a6f8ba8e71fc6e2cb6e6c8c - id: buildx - with: - version: v0.5.1 - driver: docker - - - name: Echo Available platforms - run: echo ${{ steps.buildx.outputs.platforms }} - - - name: Copy Segment write key to the package - env: - RASA_TELEMETRY_WRITE_KEY: ${{ secrets.RASA_OSS_TELEMETRY_WRITE_KEY }} - RASA_EXCEPTION_WRITE_KEY: ${{ secrets.RASA_OSS_EXCEPTION_WRITE_KEY }} - run: | - ./scripts/write_keys_file.sh - - - name: Build Docker image - run: | - IMAGE_TAG=${{ needs.run_script_and_tag_nightly_release.outputs.tag_name }} - docker buildx bake -f docker/docker-bake.hcl base - docker buildx bake -f docker/docker-bake.hcl base-builder - docker buildx bake -f docker/docker-bake.hcl default - docker tag rasa/rasa:base-localdev ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} - - # Authenticate and push to the release registry - - id: 'auth-release' - name: Authenticate with gcloud for release registry 🎫 - uses: 'google-github-actions/auth@e8df18b60c5dd38ba618c121b779307266153fbf' - with: - credentials_json: '${{ secrets.RASA_OSS_RELEASE_ACCOUNT_KEY }}' - - - name: Authenticate docker for release registry 🎫 - run: | - # Set up docker to authenticate via gcloud command-line tool. - gcloud auth configure-docker europe-west3-docker.pkg.dev - - - name: Push image to release registry - run: | - docker push ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} + docker: + name: Build Docker + runs-on: ubuntu-22.04 + needs: run_script_and_tag_nightly_release + env: + GCLOUD_VERSION: "297.0.1" + # Registry used to store Docker images used for release purposes + RELEASE_REGISTRY: "europe-west3-docker.pkg.dev/rasa-releases" + IMAGE_TAG: ${{ needs.run_script_and_tag_nightly_release.outputs.tag_name }} + + steps: + - name: Checkout git repository 🕝 + uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c + + - name: Free disk space + # tries to make sure we do not run out of disk space, see + # https://github.community/t5/GitHub-Actions/BUG-Strange-quot-No-space-left-on-device-quot-IOExceptions-on/td-p/46101 + run: | + sudo swapoff -a + sudo rm -f /swapfile + sudo apt clean + docker rmi $(docker image ls -aq) + df -h + + - name: Read Poetry Version 🔢 + run: | + echo "POETRY_VERSION=$(scripts/poetry-version.sh)" >> $GITHUB_ENV + shell: bash + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@4b4e9c3e2d4531116a6f8ba8e71fc6e2cb6e6c8c + id: buildx + with: + version: v0.5.1 + driver: docker + + - name: Echo Available platforms + run: echo ${{ steps.buildx.outputs.platforms }} + + - name: Copy Segment write key to the package + env: + RASA_TELEMETRY_WRITE_KEY: ${{ secrets.RASA_OSS_TELEMETRY_WRITE_KEY }} + RASA_EXCEPTION_WRITE_KEY: ${{ secrets.RASA_OSS_EXCEPTION_WRITE_KEY }} + run: | + ./scripts/write_keys_file.sh + + - name: Build Docker image + run: | + docker buildx bake -f docker/docker-bake.hcl base + docker buildx bake -f docker/docker-bake.hcl base-builder + docker buildx bake -f docker/docker-bake.hcl default + docker tag rasa/rasa:base-localdev ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} + + # Authenticate and push to the release registry + - id: 'auth-release' + name: Authenticate with gcloud for release registry 🎫 + uses: 'google-github-actions/auth@e8df18b60c5dd38ba618c121b779307266153fbf' + with: + credentials_json: '${{ secrets.RASA_OSS_RELEASE_ACCOUNT_KEY }}' + + - name: Authenticate docker for release registry 🎫 + run: | + # Set up docker to authenticate via gcloud command-line tool. + gcloud auth configure-docker europe-west3-docker.pkg.dev + + - name: Push image to release registry + run: | + docker push ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} From 99ef010dcc6a54cb51e7c8cb2b9dc5e22a6813f4 Mon Sep 17 00:00:00 2001 From: Sanchari Date: Thu, 4 May 2023 17:35:58 +0200 Subject: [PATCH 4/9] Fix image name error --- .github/workflows/nightly_release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nightly_release.yml b/.github/workflows/nightly_release.yml index d20c14603eb6..261c0dd1e85d 100644 --- a/.github/workflows/nightly_release.yml +++ b/.github/workflows/nightly_release.yml @@ -157,7 +157,7 @@ jobs: docker buildx bake -f docker/docker-bake.hcl base docker buildx bake -f docker/docker-bake.hcl base-builder docker buildx bake -f docker/docker-bake.hcl default - docker tag rasa/rasa:base-localdev ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} + docker tag rasa/rasa:base-builder-${IMAGE_TAG} ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} # Authenticate and push to the release registry - id: 'auth-release' From 90c6845e0634cf7f22fc9b00ad2b5ac30ab8a966 Mon Sep 17 00:00:00 2001 From: Sanchari Date: Thu, 4 May 2023 18:47:38 +0200 Subject: [PATCH 5/9] build docker image in seperate stage --- .github/workflows/nightly_release.yml | 81 +++++++++++++++++++++++++-- 1 file changed, 77 insertions(+), 4 deletions(-) diff --git a/.github/workflows/nightly_release.yml b/.github/workflows/nightly_release.yml index 261c0dd1e85d..dada51e657d7 100644 --- a/.github/workflows/nightly_release.yml +++ b/.github/workflows/nightly_release.yml @@ -106,15 +106,90 @@ jobs: gcloud artifacts print-settings python --project=rasa-releases --repository=rasa --location=europe-west3 > ~/.pypirc twine upload --verbose --repository-url https://europe-west3-python.pkg.dev/rasa-releases/rasa/ ${{ format('{0}/dist/*', github.workspace) }} + build_docker_base_images: + name: Build Docker base images and setup environment + runs-on: ubuntu-22.04 + needs: run_script_and_tag_nightly_release + env: + IMAGE_TAG: ${{ needs.run_script_and_tag_nightly_release.outputs.tag_name }} + outputs: + base_image_hash: ${{ steps.check_image.outputs.base_image_hash }} + base_mitie_image_hash: ${{ steps.check_image.outputs.base_mitie_image_hash }} + base_builder_image_hash: ${{ steps.check_image.outputs.base_builder_image_hash }} + steps: + - name: Checkout git repository 🕝 + uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c + if: github.event_name != 'pull_request' + + - name: Set up QEMU + uses: docker/setup-qemu-action@e81a89b1732b9c48d79cd809d8d81d79c4647a18 + + - name: Read Poetry Version 🔢 + run: | + echo "POETRY_VERSION=$(scripts/poetry-version.sh)" >> $GITHUB_ENV + shell: bash + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@4b4e9c3e2d4531116a6f8ba8e71fc6e2cb6e6c8c + with: + version: v0.5.1 + driver: docker + + - name: Check if a base image exists + id: check_image + env: + DOCKER_CLI_EXPERIMENTAL: enabled + run: | + # Base image + BASE_IMAGE_HASH=${{ hashFiles('docker/Dockerfile.base') }} + echo "base_image_hash=${BASE_IMAGE_HASH}" >> $GITHUB_OUTPUT + + # Base MITIE image + BASE_MITIE_IMAGE_HASH=${{ hashFiles('docker/Dockerfile.base-mitie') }} + MAKEFILE_MITIE_HASH=${{ hashFiles('Makefile') }} + echo "base_mitie_image_hash=${BASE_MITIE_IMAGE_HASH:0:50}-${MAKEFILE_MITIE_HASH:0:50}" >> $GITHUB_OUTPUT + + # Base poetry image + BASE_IMAGE_POETRY_EXISTS=$((docker manifest inspect rasa/rasa:base-poetry-${{ env.POETRY_VERSION }} &> /dev/null && echo true || echo false) || true) + echo "base_poetry_exists=${BASE_IMAGE_POETRY_EXISTS}" >> $GITHUB_OUTPUT + + # Base builder image + BASE_IMAGE_BUILDER_HASH=${{ hashFiles('docker/Dockerfile.base-builder') }}-poetry-${{ env.POETRY_VERSION }} + echo "base_builder_image_hash=${BASE_IMAGE_BUILDER_HASH}" >> $GITHUB_OUTPUT + + - name: Build Docker base image 🛠 + run: | + export IMAGE_TAG=${{ steps.check_image.outputs.base_image_hash }} + docker buildx bake -f docker/docker-bake.hcl base + + - name: Build Docker mitie base image 🛠 + run: | + export IMAGE_TAG=${{ steps.check_image.outputs.base_mitie_image_hash }} + docker buildx bake -f docker/docker-bake.hcl base-mitie + + - name: Build Docker poetry base image 🛠 + run: | + export IMAGE_TAG=${{ env.POETRY_VERSION }} + export BASE_IMAGE_HASH=${{ steps.check_image.outputs.base_image_hash }} + docker buildx bake -f docker/docker-bake.hcl base-poetry + + - name: Build Docker builder base image 🛠 + run: | + export IMAGE_TAG=${{ steps.check_image.outputs.base_builder_image_hash }} + docker buildx bake -f docker/docker-bake.hcl base-builder + docker: name: Build Docker runs-on: ubuntu-22.04 - needs: run_script_and_tag_nightly_release + needs: [build_docker_base_images] env: GCLOUD_VERSION: "297.0.1" # Registry used to store Docker images used for release purposes RELEASE_REGISTRY: "europe-west3-docker.pkg.dev/rasa-releases" IMAGE_TAG: ${{ needs.run_script_and_tag_nightly_release.outputs.tag_name }} + BASE_IMAGE_HASH: ${{ needs.build_docker_base_images.outputs.base_image_hash }} + BASE_MITIE_IMAGE_HASH: ${{ needs.build_docker_base_images.outputs.base_mitie_image_hash }} + BASE_BUILDER_IMAGE_HASH: ${{ needs.build_docker_base_images.outputs.base_builder_image_hash }} steps: - name: Checkout git repository 🕝 @@ -154,10 +229,8 @@ jobs: - name: Build Docker image run: | - docker buildx bake -f docker/docker-bake.hcl base - docker buildx bake -f docker/docker-bake.hcl base-builder docker buildx bake -f docker/docker-bake.hcl default - docker tag rasa/rasa:base-builder-${IMAGE_TAG} ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} + docker tag rasa/rasa:${IMAGE_TAG} ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} # Authenticate and push to the release registry - id: 'auth-release' From c73b074382aee9b12893dd97c1f66c36e28c1661 Mon Sep 17 00:00:00 2001 From: Sanchari Date: Fri, 5 May 2023 17:08:26 +0200 Subject: [PATCH 6/9] Building default docker file --- .github/workflows/nightly_release.yml | 83 ++------------------------- 1 file changed, 6 insertions(+), 77 deletions(-) diff --git a/.github/workflows/nightly_release.yml b/.github/workflows/nightly_release.yml index dada51e657d7..f7cb7a26a828 100644 --- a/.github/workflows/nightly_release.yml +++ b/.github/workflows/nightly_release.yml @@ -106,90 +106,15 @@ jobs: gcloud artifacts print-settings python --project=rasa-releases --repository=rasa --location=europe-west3 > ~/.pypirc twine upload --verbose --repository-url https://europe-west3-python.pkg.dev/rasa-releases/rasa/ ${{ format('{0}/dist/*', github.workspace) }} - build_docker_base_images: - name: Build Docker base images and setup environment - runs-on: ubuntu-22.04 - needs: run_script_and_tag_nightly_release - env: - IMAGE_TAG: ${{ needs.run_script_and_tag_nightly_release.outputs.tag_name }} - outputs: - base_image_hash: ${{ steps.check_image.outputs.base_image_hash }} - base_mitie_image_hash: ${{ steps.check_image.outputs.base_mitie_image_hash }} - base_builder_image_hash: ${{ steps.check_image.outputs.base_builder_image_hash }} - steps: - - name: Checkout git repository 🕝 - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c - if: github.event_name != 'pull_request' - - - name: Set up QEMU - uses: docker/setup-qemu-action@e81a89b1732b9c48d79cd809d8d81d79c4647a18 - - - name: Read Poetry Version 🔢 - run: | - echo "POETRY_VERSION=$(scripts/poetry-version.sh)" >> $GITHUB_ENV - shell: bash - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@4b4e9c3e2d4531116a6f8ba8e71fc6e2cb6e6c8c - with: - version: v0.5.1 - driver: docker - - - name: Check if a base image exists - id: check_image - env: - DOCKER_CLI_EXPERIMENTAL: enabled - run: | - # Base image - BASE_IMAGE_HASH=${{ hashFiles('docker/Dockerfile.base') }} - echo "base_image_hash=${BASE_IMAGE_HASH}" >> $GITHUB_OUTPUT - - # Base MITIE image - BASE_MITIE_IMAGE_HASH=${{ hashFiles('docker/Dockerfile.base-mitie') }} - MAKEFILE_MITIE_HASH=${{ hashFiles('Makefile') }} - echo "base_mitie_image_hash=${BASE_MITIE_IMAGE_HASH:0:50}-${MAKEFILE_MITIE_HASH:0:50}" >> $GITHUB_OUTPUT - - # Base poetry image - BASE_IMAGE_POETRY_EXISTS=$((docker manifest inspect rasa/rasa:base-poetry-${{ env.POETRY_VERSION }} &> /dev/null && echo true || echo false) || true) - echo "base_poetry_exists=${BASE_IMAGE_POETRY_EXISTS}" >> $GITHUB_OUTPUT - - # Base builder image - BASE_IMAGE_BUILDER_HASH=${{ hashFiles('docker/Dockerfile.base-builder') }}-poetry-${{ env.POETRY_VERSION }} - echo "base_builder_image_hash=${BASE_IMAGE_BUILDER_HASH}" >> $GITHUB_OUTPUT - - - name: Build Docker base image 🛠 - run: | - export IMAGE_TAG=${{ steps.check_image.outputs.base_image_hash }} - docker buildx bake -f docker/docker-bake.hcl base - - - name: Build Docker mitie base image 🛠 - run: | - export IMAGE_TAG=${{ steps.check_image.outputs.base_mitie_image_hash }} - docker buildx bake -f docker/docker-bake.hcl base-mitie - - - name: Build Docker poetry base image 🛠 - run: | - export IMAGE_TAG=${{ env.POETRY_VERSION }} - export BASE_IMAGE_HASH=${{ steps.check_image.outputs.base_image_hash }} - docker buildx bake -f docker/docker-bake.hcl base-poetry - - - name: Build Docker builder base image 🛠 - run: | - export IMAGE_TAG=${{ steps.check_image.outputs.base_builder_image_hash }} - docker buildx bake -f docker/docker-bake.hcl base-builder - docker: name: Build Docker runs-on: ubuntu-22.04 - needs: [build_docker_base_images] + needs: run_script_and_tag_nightly_release env: GCLOUD_VERSION: "297.0.1" # Registry used to store Docker images used for release purposes RELEASE_REGISTRY: "europe-west3-docker.pkg.dev/rasa-releases" IMAGE_TAG: ${{ needs.run_script_and_tag_nightly_release.outputs.tag_name }} - BASE_IMAGE_HASH: ${{ needs.build_docker_base_images.outputs.base_image_hash }} - BASE_MITIE_IMAGE_HASH: ${{ needs.build_docker_base_images.outputs.base_mitie_image_hash }} - BASE_BUILDER_IMAGE_HASH: ${{ needs.build_docker_base_images.outputs.base_builder_image_hash }} steps: - name: Checkout git repository 🕝 @@ -229,7 +154,11 @@ jobs: - name: Build Docker image run: | - docker buildx bake -f docker/docker-bake.hcl default + docker build . -t rasa/rasa:base-localdev -f docker/Dockerfile.base + docker build . -t rasa/rasa:base-builder-localdev -f docker/Dockerfile.base-builder --build-arg IMAGE_BASE_NAME=rasa/rasa --build-arg POETRY_VERSION=1.4.2 + docker build . -t rasa/rasa:base-mitie-localdev -f docker/Dockerfile.base-mitie + docker build . -t rasa/rasa:base-poetry -f docker/Dockerfile.base-poetry --build-arg IMAGE_BASE_NAME=rasa/rasa --build-arg BASE_IMAGE_HASH=localdev + docker build . -t rasa/rasa:${IMAGE_TAG} -f Dockerfile --build-arg IMAGE_BASE_NAME=rasa/rasa --build-arg BASE_IMAGE_HASH=localdev --build-arg BASE_BUILDER_IMAGE_HASH=localdev docker tag rasa/rasa:${IMAGE_TAG} ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} # Authenticate and push to the release registry From cd0c8f63cb658b7354638dea493c2600fe823ce4 Mon Sep 17 00:00:00 2001 From: Sanchari Date: Tue, 9 May 2023 14:56:44 +0200 Subject: [PATCH 7/9] Review changes added + switched to dev registry on GCP --- .github/workflows/nightly_release.yml | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/.github/workflows/nightly_release.yml b/.github/workflows/nightly_release.yml index f7cb7a26a828..ceb8e364ffc1 100644 --- a/.github/workflows/nightly_release.yml +++ b/.github/workflows/nightly_release.yml @@ -1,8 +1,6 @@ name: Nightly Builds on: pull_request: - workflow_dispatch: - jobs: run_script_and_tag_nightly_release: @@ -113,7 +111,7 @@ jobs: env: GCLOUD_VERSION: "297.0.1" # Registry used to store Docker images used for release purposes - RELEASE_REGISTRY: "europe-west3-docker.pkg.dev/rasa-releases" + DEV_REGISTRY: "europe-west3-docker.pkg.dev/rasa-ci-cd/rasa" IMAGE_TAG: ${{ needs.run_script_and_tag_nightly_release.outputs.tag_name }} steps: @@ -142,9 +140,6 @@ jobs: version: v0.5.1 driver: docker - - name: Echo Available platforms - run: echo ${{ steps.buildx.outputs.platforms }} - - name: Copy Segment write key to the package env: RASA_TELEMETRY_WRITE_KEY: ${{ secrets.RASA_OSS_TELEMETRY_WRITE_KEY }} @@ -155,24 +150,23 @@ jobs: - name: Build Docker image run: | docker build . -t rasa/rasa:base-localdev -f docker/Dockerfile.base - docker build . -t rasa/rasa:base-builder-localdev -f docker/Dockerfile.base-builder --build-arg IMAGE_BASE_NAME=rasa/rasa --build-arg POETRY_VERSION=1.4.2 - docker build . -t rasa/rasa:base-mitie-localdev -f docker/Dockerfile.base-mitie + docker build . -t rasa/rasa:base-builder-localdev -f docker/Dockerfile.base-builder --build-arg IMAGE_BASE_NAME=rasa/rasa --build-arg POETRY_VERSION=${{ env.POETRY_VERSION }} docker build . -t rasa/rasa:base-poetry -f docker/Dockerfile.base-poetry --build-arg IMAGE_BASE_NAME=rasa/rasa --build-arg BASE_IMAGE_HASH=localdev docker build . -t rasa/rasa:${IMAGE_TAG} -f Dockerfile --build-arg IMAGE_BASE_NAME=rasa/rasa --build-arg BASE_IMAGE_HASH=localdev --build-arg BASE_BUILDER_IMAGE_HASH=localdev - docker tag rasa/rasa:${IMAGE_TAG} ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} + docker tag rasa/rasa:${IMAGE_TAG} ${{env.DEV_REGISTRY}}/rasa:${IMAGE_TAG} # Authenticate and push to the release registry - - id: 'auth-release' - name: Authenticate with gcloud for release registry 🎫 + - id: 'auth-dev' + name: Authenticate with gcloud for dev registry 🎫 uses: 'google-github-actions/auth@e8df18b60c5dd38ba618c121b779307266153fbf' with: credentials_json: '${{ secrets.RASA_OSS_RELEASE_ACCOUNT_KEY }}' - - name: Authenticate docker for release registry 🎫 + - name: Authenticate docker for dev registry 🎫 run: | # Set up docker to authenticate via gcloud command-line tool. gcloud auth configure-docker europe-west3-docker.pkg.dev - name: Push image to release registry run: | - docker push ${{env.RELEASE_REGISTRY}}/rasa:${IMAGE_TAG} + docker push ${{env.DEV_REGISTRY}}/rasa:${IMAGE_TAG} From 1e6eb13eff8cb4580dbbea3a8680cf8c331f7aef Mon Sep 17 00:00:00 2001 From: Sanchari Date: Wed, 10 May 2023 14:44:48 +0200 Subject: [PATCH 8/9] Revert CI run rules --- .github/workflows/continous-integration.yml | 4 ++-- .github/workflows/nightly_release.yml | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index f54ff1ef8e97..e3866379b6aa 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -2,8 +2,8 @@ name: Continuous Integration on: push: - branches-ignore: - - nightly_docker + branches: + - main tags: - "*" pull_request: diff --git a/.github/workflows/nightly_release.yml b/.github/workflows/nightly_release.yml index ceb8e364ffc1..767e2b93bb6c 100644 --- a/.github/workflows/nightly_release.yml +++ b/.github/workflows/nightly_release.yml @@ -1,6 +1,10 @@ name: Nightly Builds on: pull_request: +# schedule: +# # Runs every weekday at 1am +# - cron: 0 1 * * 1-5 +# workflow_dispatch: jobs: run_script_and_tag_nightly_release: From 5eb810ce8386f913b0902276cd7322a31e1595ef Mon Sep 17 00:00:00 2001 From: Sanchari Date: Wed, 10 May 2023 15:50:04 +0200 Subject: [PATCH 9/9] Revert nightly CI schedule --- .github/workflows/nightly_release.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/nightly_release.yml b/.github/workflows/nightly_release.yml index 767e2b93bb6c..9b11a0e6f356 100644 --- a/.github/workflows/nightly_release.yml +++ b/.github/workflows/nightly_release.yml @@ -1,10 +1,10 @@ name: Nightly Builds on: - pull_request: -# schedule: -# # Runs every weekday at 1am -# - cron: 0 1 * * 1-5 -# workflow_dispatch: + schedule: + # Runs every weekday at 1am + - cron: 0 1 * * 1-5 + workflow_dispatch: + jobs: run_script_and_tag_nightly_release: