@@ -49,19 +49,29 @@ jobs:
4949 cat /tmp/__gh_output.txt >> $GITHUB_OUTPUT
5050 fi
5151 - name : Leeway build
52+ id : leeway-build
5253 if : ${{ steps.find-target.outputs.buildNumber }}
5354 env :
5455 LEEWAY_MAX_PROVENANCE_BUNDLE_SIZE : " 8388608"
5556 LEEWAY_REMOTE_CACHE_BUCKET : ${{ github.ref == 'refs/heads/main' && 'leeway-cache-main-c514a01' || 'leeway-cache-dev-3ac8ef5' }}
5657 run : |
58+ echo "May upgrade latest ${{ inputs.productId }} image with ${{ steps.find-target.outputs.editorSummary }}"
5759 imageRepoBase=${{ github.ref == 'refs/heads/main' && 'eu.gcr.io/gitpod-core-dev/build' || 'eu.gcr.io/gitpod-dev-artifact/build' }}
58- echo "Upgrade latest ${{ inputs.productId }} image with ${{ steps.find-target.outputs.editorSummary }}" >> $GITHUB_STEP_SUMMARY
59- leeway build -Dversion=latest -DimageRepoBase=$imageRepoBase -DbuildNumber=${{ steps.find-target.outputs.buildNumber }} components/ide/jetbrains/image:${{ steps.find-target.outputs.image }}-latest -DjbBackendVersion=${{ steps.find-target.outputs.jbBackendVersion }}
60+ output=$(leeway build -Dversion=latest -DimageRepoBase=$imageRepoBase -DbuildNumber=${{ steps.find-target.outputs.buildNumber }} components/ide/jetbrains/image:${{ steps.find-target.outputs.image }}-latest -DjbBackendVersion=${{ steps.find-target.outputs.jbBackendVersion }} --dry-run)
61+ if echo "$output" | grep -q "🔧[[:space:]]*build"; then
62+ echo "leewayUsingCache=false" >> $GITHUB_OUTPUT
63+ echo "Needs to build"
64+ echo "Upgrade latest ${{ inputs.productId }} image with ${{ steps.find-target.outputs.editorSummary }}" >> $GITHUB_STEP_SUMMARY
65+ leeway build -Dversion=latest -DimageRepoBase=$imageRepoBase -DbuildNumber=${{ steps.find-target.outputs.buildNumber }} components/ide/jetbrains/image:${{ steps.find-target.outputs.image }}-latest -DjbBackendVersion=${{ steps.find-target.outputs.jbBackendVersion }}
66+ else
67+ echo "leewayUsingCache=true" >> $GITHUB_OUTPUT
68+ echo "No need to build"
69+ fi
6070 - name : Get previous job's status
6171 id : lastrun
6272 uses : filiptronicek/get-last-job-status@main
6373 - name : Slack Notification
64- if : ${{ (success() && steps.find-target.outputs.buildNumber) || failure() }}
74+ if : ${{ (success() && steps.find-target.outputs.buildNumber && steps.leeway-build.outputs.leewayUsingCache == 'false' ) || failure() }}
6575 uses : rtCamp/action-slack-notify@v2
6676 env :
6777 SLACK_WEBHOOK : ${{ secrets.IDE_SLACK_WEBHOOK }}
0 commit comments