name: Update ECR and Lambda on: workflow_dispatch: jobs: update_ECR_lambda: name: Update ECR docker image and Lambda function runs-on: ubuntu-latest steps: - name: Check out the repo uses: actions/checkout@v4 - name: Configure AWS Credentials uses: aws-actions/configure-aws-credentials@v1 with: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} aws-region: us-west-2 - name: Login to Amazon ECR id: login-ecr uses: aws-actions/amazon-ecr-login@v1 - name: Build, tag, and push image to Amazon ECR env: ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }} ECR_REPOSITORY: iris-classification-lambda IMAGE_TAG: latest run: | docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG . docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG - name: Update Lambda with Docker image env: ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }} ECR_REPOSITORY: iris-classification-lambda IMAGE_TAG: latest run: | aws lambda update-function-code --function-name iris-classification --image-uri $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG