From cf925c9e3c6051ae9c38c600bf5f54e57a84d6cd Mon Sep 17 00:00:00 2001 From: Lorenzo Manacorda Date: Mon, 28 Oct 2024 17:44:23 +0100 Subject: [PATCH 1/4] ci: update labels on merged PRs --- .github/workflows/update-pr-labels.yml | 29 ++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 .github/workflows/update-pr-labels.yml diff --git a/.github/workflows/update-pr-labels.yml b/.github/workflows/update-pr-labels.yml new file mode 100644 index 000000000..eae7bf9c2 --- /dev/null +++ b/.github/workflows/update-pr-labels.yml @@ -0,0 +1,29 @@ +name: Update PR labels + +on: + pull_request: + types: [closed] + +jobs: + after-merge: + if: github.event.pull_request.merged == true + runs-on: ubuntu-latest + permissions: + pull-requests: write + + steps: + - uses: cachix/install-nix-action@v30 + + - run: nix-env -iA nixpkgs.github-cli + + - name: Update PR Labels + env: + GH_TOKEN: ${{ github.token }} + PR_NUMBER: ${{ github.event.pull_request.number }} + REPO: ${{ github.repository }} + run: | + # Remove `status: accepted` label, if present + gh pr edit $PR_NUMBER --remove-label "status: accepted" --repo $REPO || true + + # Add `status: merged` label + gh pr edit $PR_NUMBER --add-label "status: merged" --repo $REPO From a9afb898d9e42fab882405d6f8563b58b0d81381 Mon Sep 17 00:00:00 2001 From: Lorenzo Manacorda Date: Tue, 29 Oct 2024 11:31:41 +0100 Subject: [PATCH 2/4] only update labels on accepted RFCs --- .github/workflows/update-pr-labels.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/update-pr-labels.yml b/.github/workflows/update-pr-labels.yml index eae7bf9c2..b23e9b742 100644 --- a/.github/workflows/update-pr-labels.yml +++ b/.github/workflows/update-pr-labels.yml @@ -16,14 +16,14 @@ jobs: - run: nix-env -iA nixpkgs.github-cli - - name: Update PR Labels + - name: Update labels on accepted RFCs env: GH_TOKEN: ${{ github.token }} PR_NUMBER: ${{ github.event.pull_request.number }} REPO: ${{ github.repository }} run: | - # Remove `status: accepted` label, if present - gh pr edit $PR_NUMBER --remove-label "status: accepted" --repo $REPO || true - - # Add `status: merged` label - gh pr edit $PR_NUMBER --add-label "status: merged" --repo $REPO + # Only operate on PR if it has the `status: accepted` label + if gh pr view $PR_NUMBER --repo $REPO --json labels -q 'any(.[].name == "status: accepted")'; then + gh pr edit $PR_NUMBER --remove-label "status: accepted" --repo $REPO + gh pr edit $PR_NUMBER --add-label "status: merged" --repo $REPO + fi From 6f4c55bb82dd539633596a8f3013d5de097573d7 Mon Sep 17 00:00:00 2001 From: asymmetric <101816+asymmetric@users.noreply.github.com> Date: Sat, 2 Nov 2024 12:54:15 +0100 Subject: [PATCH 3/4] Update .github/workflows/update-pr-labels.yml Co-authored-by: Silvan Mosberger --- .github/workflows/update-pr-labels.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/update-pr-labels.yml b/.github/workflows/update-pr-labels.yml index b23e9b742..432182071 100644 --- a/.github/workflows/update-pr-labels.yml +++ b/.github/workflows/update-pr-labels.yml @@ -12,10 +12,6 @@ jobs: pull-requests: write steps: - - uses: cachix/install-nix-action@v30 - - - run: nix-env -iA nixpkgs.github-cli - - name: Update labels on accepted RFCs env: GH_TOKEN: ${{ github.token }} From 9e770ab16ab573c9814b37801f4e04bcca4d389c Mon Sep 17 00:00:00 2001 From: Lorenzo Manacorda Date: Sat, 2 Nov 2024 15:17:12 +0100 Subject: [PATCH 4/4] fix --- .github/workflows/update-pr-labels.yml | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/.github/workflows/update-pr-labels.yml b/.github/workflows/update-pr-labels.yml index 432182071..55f3fb6b0 100644 --- a/.github/workflows/update-pr-labels.yml +++ b/.github/workflows/update-pr-labels.yml @@ -6,7 +6,8 @@ on: jobs: after-merge: - if: github.event.pull_request.merged == true + if: | + github.event.pull_request.merged == true && contains(github.event.pull_request.labels.*.name, 'status: FCP') runs-on: ubuntu-latest permissions: pull-requests: write @@ -15,11 +16,7 @@ jobs: - name: Update labels on accepted RFCs env: GH_TOKEN: ${{ github.token }} + GH_REPO: ${{ github.repository }} PR_NUMBER: ${{ github.event.pull_request.number }} - REPO: ${{ github.repository }} run: | - # Only operate on PR if it has the `status: accepted` label - if gh pr view $PR_NUMBER --repo $REPO --json labels -q 'any(.[].name == "status: accepted")'; then - gh pr edit $PR_NUMBER --remove-label "status: accepted" --repo $REPO - gh pr edit $PR_NUMBER --add-label "status: merged" --repo $REPO - fi + gh pr edit $PR_NUMBER --remove-label "status: FCP" --add-label "status: accepted"