diff --git a/.github/workflows/label.yml b/.github/workflows/label.yml index 13fb953fcc2..a18bdcd70bb 100644 --- a/.github/workflows/label.yml +++ b/.github/workflows/label.yml @@ -10,8 +10,13 @@ concurrency: cancel-in-progress: true jobs: - check: + status: runs-on: ubuntu-latest + outputs: + build: ${{ steps.label-checks.outputs.build }} + linux: ${{ steps.label-checks.outputs.linux }} + win: ${{ steps.label-checks.outputs.win }} + macos: ${{ steps.label-checks.outputs.macos }} steps: - uses: actions/github-script@v6 id: label-checks @@ -19,6 +24,9 @@ jobs: script: | const [owner, repo] = ["gear-tech", "gear"]; const { ref, payload: { issue: issue_number } } = context; + console.log(JSON.stringify(context.payload)); + // const ref = "cl/issue-2888"; + // const issue_number = "3070" // List all labels of the current pull request. const { data: labelsArr } = await github.rest.issues.listLabelsOnIssue({ @@ -44,20 +52,25 @@ jobs: ref, }); - for (const run in check_runs) { - if (run.name == "build) { - linux = (run.conclusion == "skipped"); + for (run in check_runs) { + if (run.name === "build") { + linux = (run.conclusion === "skipped"); } else if (run.name == "build / macos") { - macos = (run.conclusion == "skipped"); + macos = (run.conclusion === "skipped"); } } const build = linux || macos; - return { build, linux, win: linux, macos } + const outputs = { build, linux, win: linux, macos }; + console.log(outputs); + return outputs; - - uses: ./.github/workflows/build.yml - if: ${{ steps.label-checks.outputs.result.build }} - with: - linux: ${{ steps.label-checks.outputs.result.linux }} - win: ${{ steps.label-checks.outputs.result.win }} - macos: ${{ steps.label-checks.outputs.result.macos }} + build: + needs: status + uses: ./.github/workflows/build.yml + if: ${{ needs.status.outputs.build }} + with: + cache: true + linux: ${{ needs.status.outputs.linux }} + win: ${{ needs.status.outputs.win }} + macos: ${{ needs.status.outputs.macos }}