From 97b84a5f34d97aafdeab9001d0be95ee7d8c2f65 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:04:40 -0800 Subject: [PATCH 01/22] Create labelAdded-mapQuest.yml --- .github/policies/labelAdded-mapQuest.yml | 25 ++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/policies/labelAdded-mapQuest.yml diff --git a/.github/policies/labelAdded-mapQuest.yml b/.github/policies/labelAdded-mapQuest.yml new file mode 100644 index 000000000000..4847c8fcc820 --- /dev/null +++ b/.github/policies/labelAdded-mapQuest.yml @@ -0,0 +1,25 @@ +id: labelAdded.mapQuest +name: GitOps.MapQuestHandler +description: Handles when "mapQUEST" label is added +owner: +resource: repository +disabled: false +where: +configuration: + resourceManagementConfiguration: + eventResponderTasks: + - description: >- + When the label "mapQUEST" is added to an issue + * Remove label "mapQUEST" + if: + - or: + - payloadType: Issues + - payloadType: Pull_Request + + - labelAdded: + label: ':world_map: mapQUEST' + then: + - removeLabel: ':world_map: mapQUEST' + triggerOnOwnActions: true +onFailure: +onSuccess: From 77242c7b0c375d31b27d39283b680d23b9b84410 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:08:32 -0800 Subject: [PATCH 02/22] Trim down repoman config --- .repoman.yml | 32 ++++++-------------------------- 1 file changed, 6 insertions(+), 26 deletions(-) diff --git a/.repoman.yml b/.repoman.yml index 9236e3ba4c15..71cd1e437aef 100644 --- a/.repoman.yml +++ b/.repoman.yml @@ -1,4 +1,4 @@ -revision: 5 +revision: 6 schema-version: 5 owner-ms-alias: adegeo @@ -10,29 +10,11 @@ config: ParserRegex: "^\\* (.*): (.*)$" ContentUrlRegex: - - "### Page URL\n\n(.*)" + - "### Page URL\n\n(.*)" issues: opened: - # New issue opened, add Not Triaged - - labels-add: [":watch: Not Triaged"] - - # Try to detect an empty issue - - check: - - type: comment-body - value: "### Description[\\n\\r]+\\[Enter feedback here\\][\\n\\r]+###" - pass: - - labels-add: ["needs-more-info"] - - labels-remove: [":watch: Not Triaged"] - - close - - # default for doc comment - - check: - - type: metadata-exists - pass: - - labels-add: ["Source - Docs.ms"] - - svc_subsvc_labels: true # Add links to related issues if it's a doc issue - check: @@ -42,14 +24,12 @@ issues: pass: - link-related-issues - labeled: - - # Temporary label to mark issues as updated for Quest. The label is instantly removed + # If it's an issue from docs feedback, add svc/subsvc and source labels. - check: - - type: query - value: "length(Issue.Labels[?Name == 'mapQuest']) != `0`" + - type: metadata-exists pass: - - labels-remove: ["mapQuest"] + - labels-add: ["Source - Docs.ms"] + - svc_subsvc_labels: true projects_v2_item: From b0bfc7f1b8876f8f1ffe1e73f73db043aa6a9321 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:14:07 -0800 Subject: [PATCH 03/22] add metadata field to docs issue template --- .github/ISSUE_TEMPLATE/customer-feedback.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/customer-feedback.yml b/.github/ISSUE_TEMPLATE/customer-feedback.yml index 9a7ef031900f..06e0f0fd65cc 100644 --- a/.github/ISSUE_TEMPLATE/customer-feedback.yml +++ b/.github/ISSUE_TEMPLATE/customer-feedback.yml @@ -44,4 +44,11 @@ body: required: true attributes: label: Article author - + - type: textarea + id: metadata + validations: + required: false + attributes: + label: Metadata + description: >- + Documentation metadata will be applied here for the PRMerger tool From 7e6c47b72997c08bf2baa012645e0c5b4f84d630 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:17:01 -0800 Subject: [PATCH 04/22] Create issueManagement-notTriaged.yml --- .../policies/issueManagement-notTriaged.yml | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 .github/policies/issueManagement-notTriaged.yml diff --git a/.github/policies/issueManagement-notTriaged.yml b/.github/policies/issueManagement-notTriaged.yml new file mode 100644 index 000000000000..bc5339fc5315 --- /dev/null +++ b/.github/policies/issueManagement-notTriaged.yml @@ -0,0 +1,54 @@ +id: issueManagement.notTriaged +name: GitOps.NotTriagedHandler +description: Ensures the Not Triaged label is added or removed when appropriate +owner: +resource: repository +disabled: false +where: +configuration: + resourceManagementConfiguration: + eventResponderTasks: + - description: >- + Add "not triaged" label when: + * Issue is opened + * Issue is reopened + * 'needs-more-info' label removed + if: + - payloadType: Issues + - or: + + - or: + - isAction: + action: Opened + - isAction: + action: Reopened + + - labelRemoved: + label: 'needs-more-info' + then: + - addLabel: ':watch: Not Triaged' + triggerOnOwnActions: false + + - description: >- + Remove "not triaged" label when: + * Issue author closes the issue + * reQUEST label is added + if: + - payloadType: Issues + - hasLabel: + label: ':watch: Not Triaged' + - or: + - and: + - isAction: + action: Closed + - isActivitySender: + issueAuthor: true + + - labelAdded: + label: ':world_map: reQUEST' + then: + - removeLabel: ':watch: Not Triaged' + triggerOnOwnActions: false + +onFailure: +onSuccess: From 2805c3786bc3611a67e7de98dbc6f262297e522d Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:18:19 -0800 Subject: [PATCH 05/22] handle needs more info --- .github/policies/close-issues.yml | 44 +++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 .github/policies/close-issues.yml diff --git a/.github/policies/close-issues.yml b/.github/policies/close-issues.yml new file mode 100644 index 000000000000..da7d8071bac2 --- /dev/null +++ b/.github/policies/close-issues.yml @@ -0,0 +1,44 @@ +name: Close issues +description: Close issues based on label +resource: repository +where: +configuration: + resourceManagementConfiguration: + scheduledSearches: + - frequencies: + - daily: + time: 12:00 + filters: + - isIssue + - isOpen + - hasLabel: + label: needs-more-info + - noActivitySince: + days: 14 + actions: + - addReply: + reply: This issue has been automatically closed due to no response from the original author. Feel free to reopen it if you have more information that can help us investigate the issue further. + - closeIssue + + eventResponderTasks: + - description: Remove needs-more-info label when author comments on issue + if: + - payloadType: Issue_Comment + - isAction: + action: Created + - isActivitySender: + issueAuthor: True + - hasLabel: + label: needs-more-info + - isOpen + then: + - removeLabel: + label: needs-more-info + + - description: Close issues labeled 'code-of-conduct' + if: + - payloadType: Issues + - hasLabel: + label: code-of-conduct + then: + - closeIssue From 1fe7b005b1b948d6ef4c2c387db3c7e356650b8d Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:23:32 -0800 Subject: [PATCH 06/22] Create issueManagement-emptyIssue.yml --- .../policies/issueManagement-emptyIssue.yml | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/policies/issueManagement-emptyIssue.yml diff --git a/.github/policies/issueManagement-emptyIssue.yml b/.github/policies/issueManagement-emptyIssue.yml new file mode 100644 index 000000000000..b2ab7705f633 --- /dev/null +++ b/.github/policies/issueManagement-emptyIssue.yml @@ -0,0 +1,25 @@ +id: issueManagement.emptyIssue +name: GitOps.EmptyIssue +description: Checks for an issue created via learn that has an empty description from the template. +owner: +resource: repository +disabled: false +where: +configuration: + resourceManagementConfiguration: + eventResponderTasks: + - description: Close an issue created with the learn template that has an empty body. + if: + - payloadType: Issues + - bodyContains: + pattern: '### Description[\n\r]+\[Enter feedback here\][\n\r]+###' + isRegex: true + then: + - addLabel: 'needs-more-info' + - removeLabel: ':watch: Not Triaged' + - closeIssue + + triggerOnOwnActions: false + +onFailure: +onSuccess: From 55ee9d2dcf9c0db0553a845fd0d3a3a8a097b536 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:25:11 -0800 Subject: [PATCH 07/22] Update labelAdded-mapQuest.yml --- .github/policies/labelAdded-mapQuest.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/policies/labelAdded-mapQuest.yml b/.github/policies/labelAdded-mapQuest.yml index 4847c8fcc820..c760b7c7fe33 100644 --- a/.github/policies/labelAdded-mapQuest.yml +++ b/.github/policies/labelAdded-mapQuest.yml @@ -17,9 +17,9 @@ configuration: - payloadType: Pull_Request - labelAdded: - label: ':world_map: mapQUEST' + label: 'mapQUEST' then: - - removeLabel: ':world_map: mapQUEST' + - removeLabel: 'mapQUEST' triggerOnOwnActions: true onFailure: onSuccess: From 0f5026938c11762286e6e9a88cf332e7972df4f9 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:26:17 -0800 Subject: [PATCH 08/22] Update issueManagement-notTriaged.yml --- .github/policies/issueManagement-notTriaged.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/policies/issueManagement-notTriaged.yml b/.github/policies/issueManagement-notTriaged.yml index bc5339fc5315..67af06d5b1d5 100644 --- a/.github/policies/issueManagement-notTriaged.yml +++ b/.github/policies/issueManagement-notTriaged.yml @@ -45,7 +45,7 @@ configuration: issueAuthor: true - labelAdded: - label: ':world_map: reQUEST' + label: 'reQUEST' then: - removeLabel: ':watch: Not Triaged' triggerOnOwnActions: false From b24d6ea19201fcaf9baa2255430ef57462cbc97f Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:53:01 -0800 Subject: [PATCH 09/22] Create labelAdded-areaLabels.yml --- .github/policies/labelAdded-areaLabels.yml | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/policies/labelAdded-areaLabels.yml diff --git a/.github/policies/labelAdded-areaLabels.yml b/.github/policies/labelAdded-areaLabels.yml new file mode 100644 index 000000000000..3c4716fd27b4 --- /dev/null +++ b/.github/policies/labelAdded-areaLabels.yml @@ -0,0 +1,32 @@ +id: labelAdded.areaLabels +name: GitOps.AreaLabelHandler +description: Handles when specific area labels are added +owner: +resource: repository +disabled: false +where: +configuration: + resourceManagementConfiguration: + eventResponderTasks: + - description: >- + When the label "grpc/subsvc" is added to an issue + * Add label "gRPC" + if: + - payloadType: Issues + - labelAdded: + label: 'grpc/subsv' + then: + - addLabel: 'aspnetcore-signalr/subsvc' + + - description: >- + When the label "aspnetcore-signalr/subsvc" is added to an issue + * Add label "SignalR" + if: + - payloadType: Issues + - labelAdded: + label: 'grpc/subsv' + then: + - addLabel: 'SignalR' + +onFailure: +onSuccess: From cea5828ff5dcee207ae622afb99b3d3a89d709d5 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 09:53:36 -0800 Subject: [PATCH 10/22] Delete .github/workflows/issue-processing.yml --- .github/workflows/issue-processing.yml | 37 -------------------------- 1 file changed, 37 deletions(-) delete mode 100644 .github/workflows/issue-processing.yml diff --git a/.github/workflows/issue-processing.yml b/.github/workflows/issue-processing.yml deleted file mode 100644 index bae690717316..000000000000 --- a/.github/workflows/issue-processing.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: Issue processing -on: - issues: - types: - - labeled -jobs: - process-grpc-issue: - if: github.event.label.name == 'grpc/subsvc' - runs-on: ubuntu-latest - permissions: - issues: write - steps: - - uses: actions/github-script@v6 - with: - script: | - await github.rest.issues.addLabels({ - issue_number: context.issue.number, - owner: context.repo.owner, - repo: context.repo.repo, - labels: ["gRPC"] - }) - - process-signalr-issue: - if: github.event.label.name == 'aspnetcore-signalr/subsvc' - runs-on: ubuntu-latest - permissions: - issues: write - steps: - - uses: actions/github-script@v6 - with: - script: | - await github.rest.issues.addLabels({ - issue_number: context.issue.number, - owner: context.repo.owner, - repo: context.repo.repo, - labels: ["SignalR"] - }) From ac339ba5031f40e42d13d53b21f45bfc6e6df5ea Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Mon, 30 Dec 2024 11:08:13 -0800 Subject: [PATCH 11/22] Update labelAdded-areaLabels.yml --- .github/policies/labelAdded-areaLabels.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/policies/labelAdded-areaLabels.yml b/.github/policies/labelAdded-areaLabels.yml index 3c4716fd27b4..21463fdf4789 100644 --- a/.github/policies/labelAdded-areaLabels.yml +++ b/.github/policies/labelAdded-areaLabels.yml @@ -16,7 +16,7 @@ configuration: - labelAdded: label: 'grpc/subsv' then: - - addLabel: 'aspnetcore-signalr/subsvc' + - addLabel: 'gRPC' - description: >- When the label "aspnetcore-signalr/subsvc" is added to an issue @@ -24,7 +24,7 @@ configuration: if: - payloadType: Issues - labelAdded: - label: 'grpc/subsv' + label: 'aspnetcore-signalr/subsvc' then: - addLabel: 'SignalR' From 9d63abfa5bf4b597bf9ec3c38121ade1b7e5448f Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 31 Dec 2024 12:16:48 -0800 Subject: [PATCH 12/22] Create pullRequestManagement-labelFiles.yml --- .../pullRequestManagement-labelFiles.yml | 694 ++++++++++++++++++ 1 file changed, 694 insertions(+) create mode 100644 .github/policies/pullRequestManagement-labelFiles.yml diff --git a/.github/policies/pullRequestManagement-labelFiles.yml b/.github/policies/pullRequestManagement-labelFiles.yml new file mode 100644 index 000000000000..5e95c1963939 --- /dev/null +++ b/.github/policies/pullRequestManagement-labelFiles.yml @@ -0,0 +1,694 @@ +id: pullRequestManagement.labelFiles +name: GitOps.PullRequestLabelFiles +description: Checks the files touched by a pull request and assigns a reviewer +owner: +resource: repository +disabled: false +where: +configuration: + resourceManagementConfiguration: + eventResponderTasks: + - description: Modify PRs that touch certain files + triggerOnOwnActions: false + if: + - payloadType: Pull_Request + - or: + - isAction: + action: Opened + - isAction: + action: Synchronize + - not: + targetsBranch: + branch: live + then: + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*/blazor/hybrid/.* + then: + - requestReviewer: + reviewer: guardrex + - addLabel: + label: blazor-hybrid/subsvc + - if: + - or: + - filesMatchPattern: + matchAny: true + pattern: pattern: (?i).*/blazor/.* + - filesMatchPattern: + matchAny: true + pattern: pattern: (?i).*/client-side/dotnet-interop/index.md + - filesMatchPattern: + matchAny: true + pattern: pattern: (?i).*/client-side/dotnet-interop/wasm-browser-app.md + - filesMatchPattern: + matchAny: true + pattern: pattern: (?i).*/mvc/views/tag-helpers/built-in/component-tag-helper.md + - filesMatchPattern: + matchAny: true + pattern: pattern: (?i).*/mvc/views/tag-helpers/built-in/persist-component-state.md + then: + - requestReviewer: + reviewer: guardrex + - addLabel: + label: blazor/subsvc + + + + + + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*_vblang/spec.* + then: + - addLabel: + label: dotnet-visualbasic/svc + - addLabel: + label: vb-spec/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/architecture.* + then: + - addLabel: + label: dotnet-architecture/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/architecture/blazor-for-web-forms-developers.* + then: + - addLabel: + label: dotnet-architecture/svc + - addLabel: + label: blazor/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/architecture/cloud-native.* + then: + - addLabel: + label: dotnet-architecture/svc + - addLabel: + label: cloud-native/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/architecture/containerized-lifecycle.* + then: + - addLabel: + label: dotnet-architecture/svc + - addLabel: + label: containerized-lifecycle/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/architecture/grpc-for-wcf-developers.* + then: + - addLabel: + label: dotnet-architecture/svc + - addLabel: + label: grpc/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/architecture/microservices.* + then: + - addLabel: + label: dotnet-architecture/svc + - addLabel: + label: microservices/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/architecture/modernize-with-azure-containers.* + then: + - addLabel: + label: dotnet-architecture/svc + - addLabel: + label: modernize-with-azure-containers/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/architecture/modern-web-apps-azure.* + then: + - addLabel: + label: dotnet-architecture/svc + - addLabel: + label: modern-web-apps-azure/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/architecture/serverless.* + then: + - addLabel: + label: dotnet-architecture/svc + - addLabel: + label: serverless/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/azure.* + then: + - addLabel: + label: dotnet-azure/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/core.* + then: + - addLabel: + label: dotnet-fundamentals/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/core/tools.* + then: + - addLabel: + label: dotnet-fundamentals/svc + - addLabel: + label: dotnet-cli/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/core/docker.* + then: + - addLabel: + label: dotnet-fundamentals/svc + - addLabel: + label: dotnet-docker/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/core/install.* + then: + - addLabel: + label: dotnet-fundamentals/svc + - addLabel: + label: install/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp.* + then: + - addLabel: + label: dotnet-csharp/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/fundamentals.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/misc.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: csharp-errors-warnings/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/whats-new.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: whats-new/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/how-to.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/linq.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: csharp-linq/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/indexers.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/generics.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/strings.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/types.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/statements-expressions-operators.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/interop.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: advanced-concepts/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/language-reference/unsafe-code.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: advanced-concepts/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/namespaces.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/arrays.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/concepts/covariance-contravariance.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: advanced-concepts/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/concepts/serialization.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/concepts/expression-trees.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: advanced-concepts/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/asynchronous-programming/.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: async-task-programming/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/concepts/linq.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: csharp-linq/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/concepts/attributes.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/xmldoc.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/classes-and-structs.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/delegates.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/file-system.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/events.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/programming-guide/interfaces.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/tutorials.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: fundamentals/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/tutorials/exploration.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: get-started/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/language-reference.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: lang-reference/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/language-reference/compiler-messages.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: csharp-diagnostics/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/roslyn-sdk.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: roslyn-sdk/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/csharp/tour-of-csharp.* + then: + - addLabel: + label: dotnet-csharp/svc + - addLabel: + label: get-started/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework.* + then: + - addLabel: + label: dotnet-framework/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework/configure-apps/file-schema/network.* + then: + - addLabel: + label: dotnet-framework/svc + - addLabel: + label: networking/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework/configure-apps/file-schema/wcf.* + then: + - addLabel: + label: dotnet-framework/svc + - addLabel: + label: wcf/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework/data/adonet.* + then: + - addLabel: + label: dotnet-framework/svc + - addLabel: + label: data-access/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework/data/wcf.* + then: + - addLabel: + label: dotnet-framework/svc + - addLabel: + label: wcf/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework/docker.* + then: + - addLabel: + label: dotnet-framework/svc + - addLabel: + label: dotnet-docker/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework/install.* + then: + - addLabel: + label: dotnet-framework/svc + - addLabel: + label: install/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework/migration-guide.* + then: + - addLabel: + label: dotnet-framework/svc + - addLabel: + label: app-compat/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework/network-programming.* + then: + - addLabel: + label: dotnet-framework/svc + - addLabel: + label: dotnet-networking/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/fundamentals/networking.* + then: + - addLabel: + label: dotnet-fundamentals/svc + - addLabel: + label: dotnet-networking/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/core/extensions/http.* + then: + - addLabel: + label: dotnet-fundamentals/svc + - addLabel: + label: dotnet-networking/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework/wcf.* + then: + - addLabel: + label: dotnet-framework/svc + - addLabel: + label: dotnet-wcf/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/framework/windows-workflow-foundation.* + then: + - addLabel: + label: dotnet-framework/svc + - addLabel: + label: wf/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/fsharp.* + then: + - addLabel: + label: dotnet-fsharp/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/fundamentals.* + then: + - addLabel: + label: dotnet-fundamentals/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/standard.* + then: + - addLabel: + label: dotnet-fundamentals/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/standard/analyzers.* + then: + - addLabel: + label: dotnet-fundamentals/svc + - addLabel: + label: code-analyzers/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/machine-learning.* + then: + - addLabel: + label: dotnet-ml/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/spark.* + then: + - addLabel: + label: dotnet-spark/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/standard/data.* + then: + - addLabel: + label: dotnet-data/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/standard/design-guidelines.* + then: + - addLabel: + label: dotnet/svc + - addLabel: + label: standard-library/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/standard/security.* + then: + - addLabel: + label: dotnet/svc + - addLabel: + label: security-practices/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/visual-basic.* + then: + - addLabel: + label: dotnet-visualbasic/svc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/visual-basic/language-reference/error-messages.* + then: + - addLabel: + label: dotnet-visualbasic/svc + - addLabel: + label: errors-warnings/subsvc + - if: + - filesMatchPattern: + matchAny: true + pattern: (?i).*docs/visual-basic/misc.* + then: + - addLabel: + label: dotnet-visualbasic/svc + - addLabel: + label: errors-warnings/subsvc +onFailure: +onSuccess: From 274a4994153c8810600c6c33021d9faeaa9579f7 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 31 Dec 2024 12:26:03 -0800 Subject: [PATCH 13/22] Test --- .../pullRequestManagement-labelFiles.yml | 657 +----------------- 1 file changed, 3 insertions(+), 654 deletions(-) diff --git a/.github/policies/pullRequestManagement-labelFiles.yml b/.github/policies/pullRequestManagement-labelFiles.yml index 5e95c1963939..2827bfc1cba9 100644 --- a/.github/policies/pullRequestManagement-labelFiles.yml +++ b/.github/policies/pullRequestManagement-labelFiles.yml @@ -30,665 +30,14 @@ configuration: reviewer: guardrex - addLabel: label: blazor-hybrid/subsvc - - if: - - or: - - filesMatchPattern: - matchAny: true - pattern: pattern: (?i).*/blazor/.* - - filesMatchPattern: - matchAny: true - pattern: pattern: (?i).*/client-side/dotnet-interop/index.md - - filesMatchPattern: - matchAny: true - pattern: pattern: (?i).*/client-side/dotnet-interop/wasm-browser-app.md - - filesMatchPattern: - matchAny: true - pattern: pattern: (?i).*/mvc/views/tag-helpers/built-in/component-tag-helper.md - - filesMatchPattern: - matchAny: true - pattern: pattern: (?i).*/mvc/views/tag-helpers/built-in/persist-component-state.md - then: - - requestReviewer: - reviewer: guardrex - - addLabel: - label: blazor/subsvc - - - - - - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*_vblang/spec.* - then: - - addLabel: - label: dotnet-visualbasic/svc - - addLabel: - label: vb-spec/subsvc - if: - filesMatchPattern: matchAny: true - pattern: (?i).*docs/architecture.* + pattern: pattern: (?i).*/blazor/.* then: - - addLabel: - label: dotnet-architecture/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/architecture/blazor-for-web-forms-developers.* - then: - - addLabel: - label: dotnet-architecture/svc + - requestReviewer: + reviewer: guardrex - addLabel: label: blazor/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/architecture/cloud-native.* - then: - - addLabel: - label: dotnet-architecture/svc - - addLabel: - label: cloud-native/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/architecture/containerized-lifecycle.* - then: - - addLabel: - label: dotnet-architecture/svc - - addLabel: - label: containerized-lifecycle/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/architecture/grpc-for-wcf-developers.* - then: - - addLabel: - label: dotnet-architecture/svc - - addLabel: - label: grpc/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/architecture/microservices.* - then: - - addLabel: - label: dotnet-architecture/svc - - addLabel: - label: microservices/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/architecture/modernize-with-azure-containers.* - then: - - addLabel: - label: dotnet-architecture/svc - - addLabel: - label: modernize-with-azure-containers/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/architecture/modern-web-apps-azure.* - then: - - addLabel: - label: dotnet-architecture/svc - - addLabel: - label: modern-web-apps-azure/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/architecture/serverless.* - then: - - addLabel: - label: dotnet-architecture/svc - - addLabel: - label: serverless/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/azure.* - then: - - addLabel: - label: dotnet-azure/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/core.* - then: - - addLabel: - label: dotnet-fundamentals/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/core/tools.* - then: - - addLabel: - label: dotnet-fundamentals/svc - - addLabel: - label: dotnet-cli/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/core/docker.* - then: - - addLabel: - label: dotnet-fundamentals/svc - - addLabel: - label: dotnet-docker/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/core/install.* - then: - - addLabel: - label: dotnet-fundamentals/svc - - addLabel: - label: install/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp.* - then: - - addLabel: - label: dotnet-csharp/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/fundamentals.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/misc.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: csharp-errors-warnings/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/whats-new.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: whats-new/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/how-to.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/linq.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: csharp-linq/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/indexers.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/generics.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/strings.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/types.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/statements-expressions-operators.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/interop.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: advanced-concepts/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/language-reference/unsafe-code.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: advanced-concepts/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/namespaces.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/arrays.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/concepts/covariance-contravariance.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: advanced-concepts/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/concepts/serialization.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/concepts/expression-trees.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: advanced-concepts/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/asynchronous-programming/.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: async-task-programming/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/concepts/linq.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: csharp-linq/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/concepts/attributes.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/xmldoc.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/classes-and-structs.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/delegates.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/file-system.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/events.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/programming-guide/interfaces.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/tutorials.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: fundamentals/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/tutorials/exploration.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: get-started/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/language-reference.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: lang-reference/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/language-reference/compiler-messages.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: csharp-diagnostics/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/roslyn-sdk.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: roslyn-sdk/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/csharp/tour-of-csharp.* - then: - - addLabel: - label: dotnet-csharp/svc - - addLabel: - label: get-started/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework.* - then: - - addLabel: - label: dotnet-framework/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework/configure-apps/file-schema/network.* - then: - - addLabel: - label: dotnet-framework/svc - - addLabel: - label: networking/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework/configure-apps/file-schema/wcf.* - then: - - addLabel: - label: dotnet-framework/svc - - addLabel: - label: wcf/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework/data/adonet.* - then: - - addLabel: - label: dotnet-framework/svc - - addLabel: - label: data-access/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework/data/wcf.* - then: - - addLabel: - label: dotnet-framework/svc - - addLabel: - label: wcf/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework/docker.* - then: - - addLabel: - label: dotnet-framework/svc - - addLabel: - label: dotnet-docker/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework/install.* - then: - - addLabel: - label: dotnet-framework/svc - - addLabel: - label: install/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework/migration-guide.* - then: - - addLabel: - label: dotnet-framework/svc - - addLabel: - label: app-compat/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework/network-programming.* - then: - - addLabel: - label: dotnet-framework/svc - - addLabel: - label: dotnet-networking/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/fundamentals/networking.* - then: - - addLabel: - label: dotnet-fundamentals/svc - - addLabel: - label: dotnet-networking/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/core/extensions/http.* - then: - - addLabel: - label: dotnet-fundamentals/svc - - addLabel: - label: dotnet-networking/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework/wcf.* - then: - - addLabel: - label: dotnet-framework/svc - - addLabel: - label: dotnet-wcf/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/framework/windows-workflow-foundation.* - then: - - addLabel: - label: dotnet-framework/svc - - addLabel: - label: wf/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/fsharp.* - then: - - addLabel: - label: dotnet-fsharp/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/fundamentals.* - then: - - addLabel: - label: dotnet-fundamentals/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/standard.* - then: - - addLabel: - label: dotnet-fundamentals/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/standard/analyzers.* - then: - - addLabel: - label: dotnet-fundamentals/svc - - addLabel: - label: code-analyzers/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/machine-learning.* - then: - - addLabel: - label: dotnet-ml/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/spark.* - then: - - addLabel: - label: dotnet-spark/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/standard/data.* - then: - - addLabel: - label: dotnet-data/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/standard/design-guidelines.* - then: - - addLabel: - label: dotnet/svc - - addLabel: - label: standard-library/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/standard/security.* - then: - - addLabel: - label: dotnet/svc - - addLabel: - label: security-practices/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/visual-basic.* - then: - - addLabel: - label: dotnet-visualbasic/svc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/visual-basic/language-reference/error-messages.* - then: - - addLabel: - label: dotnet-visualbasic/svc - - addLabel: - label: errors-warnings/subsvc - - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*docs/visual-basic/misc.* - then: - - addLabel: - label: dotnet-visualbasic/svc - - addLabel: - label: errors-warnings/subsvc onFailure: onSuccess: From 9d7c6de2e7684c06b062671fd4123e1c87d0a425 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 31 Dec 2024 12:29:10 -0800 Subject: [PATCH 14/22] Use some other config that was previously working to check... --- .../pullRequestManagement-labelFiles.yml | 62 +++++++++++++------ 1 file changed, 44 insertions(+), 18 deletions(-) diff --git a/.github/policies/pullRequestManagement-labelFiles.yml b/.github/policies/pullRequestManagement-labelFiles.yml index 2827bfc1cba9..be7a74700e47 100644 --- a/.github/policies/pullRequestManagement-labelFiles.yml +++ b/.github/policies/pullRequestManagement-labelFiles.yml @@ -1,6 +1,6 @@ -id: pullRequestManagement.labelFiles -name: GitOps.PullRequestLabelFiles -description: Checks the files touched by a pull request and assigns a reviewer +id: pullRequestManagement.serviceLabels +name: GitOps.PullRequestServiceLabels +description: Checks the files touched by a pull request and assigns area labels. owner: resource: repository disabled: false @@ -8,7 +8,7 @@ where: configuration: resourceManagementConfiguration: eventResponderTasks: - - description: Modify PRs that touch certain files + - description: Add labels to PRs that touch certain files triggerOnOwnActions: false if: - payloadType: Pull_Request @@ -21,23 +21,49 @@ configuration: targetsBranch: branch: live then: + # Framework WPF - if: - - filesMatchPattern: - matchAny: true - pattern: (?i).*/blazor/hybrid/.* + - filesMatchPattern: + pattern: '(?i).*dotnet-desktop-guide\/framework\/wpf.*' + matchAny: true then: - - requestReviewer: - reviewer: guardrex - - addLabel: - label: blazor-hybrid/subsvc + - addLabel: + label: 'dotnet-framework/svc' + - addLabel: + label: 'wpf/subsvc' + + # Framework WinForms - if: - - filesMatchPattern: - matchAny: true - pattern: pattern: (?i).*/blazor/.* + - filesMatchPattern: + pattern: '(?i).*dotnet-desktop-guide\/framework\/winforms.*' + matchAny: true then: - - requestReviewer: - reviewer: guardrex - - addLabel: - label: blazor/subsvc + - addLabel: + label: 'dotnet-framework/svc' + - addLabel: + label: 'winforms/subsvc' + + # .NET WPF + - if: + - filesMatchPattern: + pattern: '(?i).*dotnet-desktop-guide\/net\/wpf.*' + matchAny: true + then: + - addLabel: + label: 'dotnet-desktop/svc' + - addLabel: + label: 'wpf/subsvc' + + # .NET WinForms + - if: + - filesMatchPattern: + pattern: '(?i).*dotnet-desktop-guide\/net\/winforms.*' + matchAny: true + then: + - addLabel: + label: 'dotnet-desktop/svc' + - addLabel: + label: 'winforms/subsvc' + onFailure: onSuccess: From 43603eb6830c8780e730294189bdc6fd757f7893 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 31 Dec 2024 12:32:48 -0800 Subject: [PATCH 15/22] Restore and remove dupe pattern: --- .../pullRequestManagement-labelFiles.yml | 63 ++++++++----------- 1 file changed, 25 insertions(+), 38 deletions(-) diff --git a/.github/policies/pullRequestManagement-labelFiles.yml b/.github/policies/pullRequestManagement-labelFiles.yml index be7a74700e47..2562ff63a90c 100644 --- a/.github/policies/pullRequestManagement-labelFiles.yml +++ b/.github/policies/pullRequestManagement-labelFiles.yml @@ -1,6 +1,6 @@ -id: pullRequestManagement.serviceLabels -name: GitOps.PullRequestServiceLabels -description: Checks the files touched by a pull request and assigns area labels. +id: pullRequestManagement.labelFiles +name: GitOps.PullRequestLabelFiles +description: Checks the files touched by a pull request and assigns a reviewer owner: resource: repository disabled: false @@ -8,7 +8,7 @@ where: configuration: resourceManagementConfiguration: eventResponderTasks: - - description: Add labels to PRs that touch certain files + - description: Modify PRs that touch certain files triggerOnOwnActions: false if: - payloadType: Pull_Request @@ -21,49 +21,36 @@ configuration: targetsBranch: branch: live then: - # Framework WPF - if: - - filesMatchPattern: - pattern: '(?i).*dotnet-desktop-guide\/framework\/wpf.*' - matchAny: true + - filesMatchPattern: + matchAny: true + pattern: (?i).*/blazor/hybrid/.* then: - - addLabel: - label: 'dotnet-framework/svc' - - addLabel: - label: 'wpf/subsvc' - - # Framework WinForms + - requestReviewer: + reviewer: guardrex + - addLabel: + label: blazor-hybrid/subsvc - if: + - or: - filesMatchPattern: - pattern: '(?i).*dotnet-desktop-guide\/framework\/winforms.*' matchAny: true - then: - - addLabel: - label: 'dotnet-framework/svc' - - addLabel: - label: 'winforms/subsvc' - - # .NET WPF - - if: + pattern: (?i).*/blazor/.* - filesMatchPattern: - pattern: '(?i).*dotnet-desktop-guide\/net\/wpf.*' matchAny: true - then: - - addLabel: - label: 'dotnet-desktop/svc' - - addLabel: - label: 'wpf/subsvc' - - # .NET WinForms - - if: + pattern: (?i).*/client-side/dotnet-interop/index.md + - filesMatchPattern: + matchAny: true + pattern: (?i).*/client-side/dotnet-interop/wasm-browser-app.md + - filesMatchPattern: + matchAny: true + pattern: (?i).*/mvc/views/tag-helpers/built-in/component-tag-helper.md - filesMatchPattern: - pattern: '(?i).*dotnet-desktop-guide\/net\/winforms.*' matchAny: true + pattern: (?i).*/mvc/views/tag-helpers/built-in/persist-component-state.md then: - - addLabel: - label: 'dotnet-desktop/svc' - - addLabel: - label: 'winforms/subsvc' - + - requestReviewer: + reviewer: guardrex + - addLabel: + label: blazor/subsvc onFailure: onSuccess: From dc1db38655575cc029986451551c3804564f81c7 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 31 Dec 2024 12:34:39 -0800 Subject: [PATCH 16/22] try adding qoutes --- .../pullRequestManagement-labelFiles.yml | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/policies/pullRequestManagement-labelFiles.yml b/.github/policies/pullRequestManagement-labelFiles.yml index 2562ff63a90c..d2a9299cc2c1 100644 --- a/.github/policies/pullRequestManagement-labelFiles.yml +++ b/.github/policies/pullRequestManagement-labelFiles.yml @@ -24,33 +24,33 @@ configuration: - if: - filesMatchPattern: matchAny: true - pattern: (?i).*/blazor/hybrid/.* + pattern: '(?i).*/blazor/hybrid/.*' then: - requestReviewer: - reviewer: guardrex + reviewer: 'guardrex' - addLabel: - label: blazor-hybrid/subsvc + label: 'blazor-hybrid/subsvc' - if: - or: - filesMatchPattern: matchAny: true - pattern: (?i).*/blazor/.* + pattern: '(?i).*/blazor/.*' - filesMatchPattern: matchAny: true - pattern: (?i).*/client-side/dotnet-interop/index.md + pattern: '(?i).*/client-side/dotnet-interop/index.md' - filesMatchPattern: matchAny: true - pattern: (?i).*/client-side/dotnet-interop/wasm-browser-app.md + pattern: '(?i).*/client-side/dotnet-interop/wasm-browser-app.md' - filesMatchPattern: matchAny: true - pattern: (?i).*/mvc/views/tag-helpers/built-in/component-tag-helper.md + pattern: '(?i).*/mvc/views/tag-helpers/built-in/component-tag-helper.md' - filesMatchPattern: matchAny: true - pattern: (?i).*/mvc/views/tag-helpers/built-in/persist-component-state.md + pattern: '(?i).*/mvc/views/tag-helpers/built-in/persist-component-state.md' then: - requestReviewer: - reviewer: guardrex + reviewer: 'guardrex' - addLabel: - label: blazor/subsvc + label: 'blazor/subsvc' onFailure: onSuccess: From 147c6ed4a5a9d6bba49d34d610b5de0b6eb1d04d Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 31 Dec 2024 12:35:13 -0800 Subject: [PATCH 17/22] Remove reviewer request from labelFiles.yml --- .github/policies/pullRequestManagement-labelFiles.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/policies/pullRequestManagement-labelFiles.yml b/.github/policies/pullRequestManagement-labelFiles.yml index d2a9299cc2c1..c6faccb69569 100644 --- a/.github/policies/pullRequestManagement-labelFiles.yml +++ b/.github/policies/pullRequestManagement-labelFiles.yml @@ -26,8 +26,6 @@ configuration: matchAny: true pattern: '(?i).*/blazor/hybrid/.*' then: - - requestReviewer: - reviewer: 'guardrex' - addLabel: label: 'blazor-hybrid/subsvc' - if: @@ -48,8 +46,6 @@ configuration: matchAny: true pattern: '(?i).*/mvc/views/tag-helpers/built-in/persist-component-state.md' then: - - requestReviewer: - reviewer: 'guardrex' - addLabel: label: 'blazor/subsvc' onFailure: From 72f5d464d1ead6b95812822e17de019173a1286c Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 31 Dec 2024 12:36:15 -0800 Subject: [PATCH 18/22] Add reviewer request for specific file patterns --- .github/policies/pullRequestManagement-labelFiles.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/policies/pullRequestManagement-labelFiles.yml b/.github/policies/pullRequestManagement-labelFiles.yml index c6faccb69569..4fa617cc3aff 100644 --- a/.github/policies/pullRequestManagement-labelFiles.yml +++ b/.github/policies/pullRequestManagement-labelFiles.yml @@ -26,6 +26,7 @@ configuration: matchAny: true pattern: '(?i).*/blazor/hybrid/.*' then: + - requestReviewer: guardrex - addLabel: label: 'blazor-hybrid/subsvc' - if: @@ -46,6 +47,7 @@ configuration: matchAny: true pattern: '(?i).*/mvc/views/tag-helpers/built-in/persist-component-state.md' then: + - requestReviewer: guardrex - addLabel: label: 'blazor/subsvc' onFailure: From f995878f0655802ef4e954d8d72b95161235692e Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 31 Dec 2024 12:47:16 -0800 Subject: [PATCH 19/22] Update reviewer request format in YAML file --- .github/policies/pullRequestManagement-labelFiles.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/policies/pullRequestManagement-labelFiles.yml b/.github/policies/pullRequestManagement-labelFiles.yml index 4fa617cc3aff..66342b000934 100644 --- a/.github/policies/pullRequestManagement-labelFiles.yml +++ b/.github/policies/pullRequestManagement-labelFiles.yml @@ -26,7 +26,6 @@ configuration: matchAny: true pattern: '(?i).*/blazor/hybrid/.*' then: - - requestReviewer: guardrex - addLabel: label: 'blazor-hybrid/subsvc' - if: @@ -47,7 +46,8 @@ configuration: matchAny: true pattern: '(?i).*/mvc/views/tag-helpers/built-in/persist-component-state.md' then: - - requestReviewer: guardrex + - requestReviewer: + user: guardrex - addLabel: label: 'blazor/subsvc' onFailure: From dde33577c014a1a0dac420c6d0152cdb45a74ba5 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 31 Dec 2024 12:48:04 -0800 Subject: [PATCH 20/22] Update PR management to assign guardrex --- .github/policies/pullRequestManagement-labelFiles.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/policies/pullRequestManagement-labelFiles.yml b/.github/policies/pullRequestManagement-labelFiles.yml index 66342b000934..f2436b4ca850 100644 --- a/.github/policies/pullRequestManagement-labelFiles.yml +++ b/.github/policies/pullRequestManagement-labelFiles.yml @@ -26,6 +26,8 @@ configuration: matchAny: true pattern: '(?i).*/blazor/hybrid/.*' then: + - assignTo: + user: guardrex - addLabel: label: 'blazor-hybrid/subsvc' - if: @@ -46,7 +48,7 @@ configuration: matchAny: true pattern: '(?i).*/mvc/views/tag-helpers/built-in/persist-component-state.md' then: - - requestReviewer: + - assignTo: user: guardrex - addLabel: label: 'blazor/subsvc' From 1d8d5797be2f7f13dfc16e1fa4fb735d97a47540 Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 31 Dec 2024 13:03:18 -0800 Subject: [PATCH 21/22] Change 'assignTo' to 'requestReview' in YAML --- .github/policies/pullRequestManagement-labelFiles.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/policies/pullRequestManagement-labelFiles.yml b/.github/policies/pullRequestManagement-labelFiles.yml index f2436b4ca850..a6d8e6607dc9 100644 --- a/.github/policies/pullRequestManagement-labelFiles.yml +++ b/.github/policies/pullRequestManagement-labelFiles.yml @@ -26,8 +26,8 @@ configuration: matchAny: true pattern: '(?i).*/blazor/hybrid/.*' then: - - assignTo: - user: guardrex + - requestReview: + reviewer: guardrex - addLabel: label: 'blazor-hybrid/subsvc' - if: @@ -48,8 +48,8 @@ configuration: matchAny: true pattern: '(?i).*/mvc/views/tag-helpers/built-in/persist-component-state.md' then: - - assignTo: - user: guardrex + - requestReview: + reviewer: guardrex - addLabel: label: 'blazor/subsvc' onFailure: From b9c71b298a5ddc93f0d5c0de348123f0cfce83df Mon Sep 17 00:00:00 2001 From: "Andy (Steve) De George" <67293991+adegeo@users.noreply.github.com> Date: Tue, 7 Jan 2025 15:10:42 -0800 Subject: [PATCH 22/22] Remove PRMerger tool reference in metadata description --- .github/ISSUE_TEMPLATE/customer-feedback.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/customer-feedback.yml b/.github/ISSUE_TEMPLATE/customer-feedback.yml index 06e0f0fd65cc..ac66b8d7d973 100644 --- a/.github/ISSUE_TEMPLATE/customer-feedback.yml +++ b/.github/ISSUE_TEMPLATE/customer-feedback.yml @@ -51,4 +51,4 @@ body: attributes: label: Metadata description: >- - Documentation metadata will be applied here for the PRMerger tool + Documentation metadata will be applied here