name: Push CI Runner Docker Image on: workflow_dispatch: schedule: - cron: "0 1 * * 3" jobs: push: runs-on: ubuntu-20.04 steps: - name: Checkout uses: actions/checkout@v4 # This has to happen after checkout in order for gh to work. - name: "Cancel scheduled job on forks" if: github.repository != 'openedx/edx-platform' && github.event_name == 'schedule' env: GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" run: | gh run cancel "${{ github.run_id }}" gh run watch "${{ github.run_id }}" - name: Configure AWS Credentials uses: aws-actions/configure-aws-credentials@v4 with: aws-access-key-id: ${{ secrets.TOOLS_EDX_ECR_USER_AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.TOOLS_EDX_ECR_USER_AWS_SECRET_ACCESS_KEY }} aws-region: us-east-1 - name: Log in to ECR id: login-ecr uses: aws-actions/amazon-ecr-login@v2 - name: Build, tag, and push image to Amazon ECR env: ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }} ECR_REPOSITORY: actions-runner IMAGE_TAG: latest run: | docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG -f scripts/ci-runner.Dockerfile . docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG