[main] Servicing docs improvements (#85855)
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Mon, 8 May 2023 23:38:34 +0000 (17:38 -0600)
committerGitHub <noreply@github.com>
Mon, 8 May 2023 23:38:34 +0000 (17:38 -0600)
* Servicing docs improvements

* Apply suggestions from code review

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: Carlos Sánchez López <1175054+carlossanlop@users.noreply.github.com>
* Apply suggestions from code review

* Update .github/workflows/check-service-labels.yml

* Update .github/workflows/check-service-labels.yml

---------

Co-authored-by: Carlos Sánchez López <1175054+carlossanlop@users.noreply.github.com>
Co-authored-by: Juan Hoyos <19413848+hoyosjs@users.noreply.github.com>
.github/PULL_REQUEST_TEMPLATE/servicing_pull_request_template.md
.github/workflows/check-service-labels.yml
docs/project/library-servicing.md

index 8932380..9a748a0 100644 (file)
@@ -24,5 +24,4 @@ main PR <!-- Link to PR if any that fixed this in the main branch. -->
 
 # Package authoring signed off?
 
-
-IMPORTANT: If this change touches code that ships in a NuGet package, please make certain that you have added any necessary [package authoring](https://github.com/dotnet/runtime/blob/main/docs/project/library-servicing.md) and gotten it explicitly reviewed.
+IMPORTANT: If this change touches code that ships in a NuGet package, please make certain that you have added any necessary [package authoring](../../docs/project/library-servicing.md) and gotten it explicitly reviewed.
index efbbcdf..5261cc1 100644 (file)
@@ -13,10 +13,12 @@ jobs:
   check-labels:
     runs-on: ubuntu-latest
     steps:
-    - name: Check servicing labels
+    - name: Check 'Servicing-approved' label
       run: |
+        echo "Merging permission is enabled for servicing PRs when the `Servicing-approved` label is applied."
         if [ "${{ contains(github.event.pull_request.labels.*.name, 'Servicing-approved') }}" = "true" ]; then
           exit 0
         else
+          echo "::error:: 'Servicing-approved' label not applied to the PR yet. More information: https://github.com/dotnet/runtime/blob/main/docs/project/library-servicing.md#approval-process"
           exit 1
         fi
index aef1268..dd5f4b3 100644 (file)
@@ -1,6 +1,6 @@
 # How to service a library
 
-This document provides the steps necessary after modifying a library in a servicing branch.
+This document provides the steps that need to be followed after modifying a library in a servicing branch.
 
 Servicing branches represent shipped versions of .NET, and their name is in the format `release/X.0-staging`. Examples:
 
@@ -39,5 +39,15 @@ All the servicing change must go through an approval process. You have two ways
 For both cases, you must:
 
 - Fill out the template of the PR description.
-- Add the `servicing-consider` label.
-- Bring it to the attention of the engineering lead responsible for the area, so they consider the fix for servicing.
+- Bring it to the attention of the [engineering lead responsible for the area](~/docs/area-owners.md).
+- If the fix is a product change, the area owner will:
+  - Add the `Servicing-consider` label.
+  - Ask the area owner to champion your PR in the .NET Tactics meeting to request merge approval.
+  - If the change is approved, they will replace the `Servicing-consider` label by `Servicing-approved` and sign-off the PR.
+- If the fix is a test-only or infra-only change, the area owner will:
+  - Review the PR and sign-off if they approve it.
+  - Add the `Servicing-approved` label.
+
+The area owner can then merge the PR once the CI looks good (it's either green or the failures are investigated and determined to be unrelated to the PR).
+
+**Note**: Applying the `Servicing-approved` label ensures the `check-service-labels` CI job passes, which is a mandatory requirement for merging a PR in a servicing branch.