Send build failure notifications to build definition .yml
file synthetic sibling CODEOWNERS owners, instead of the owners of the .yml
file itself.
#5194
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements capability as described in:
plus does a little bit of related message output changes and code refactoring.
Copy-pasting here the relevant paragraph for convenience:
Testing done
I did some manual testing with C# snippets to confirm the introduced method
GetSiblingFilePath
behaves as expected. All other changes are done via automated IDE refactorings so should be safe.Expected behavior change
Once this change goes in effect via PR similar to this one:
Azure.Sdk.Tools.NotificationConfiguration
inglobals.yml
from20230108.1
to20230119.1
#5177I expect there will be some changes to whom the build failure notifications are routed.
I reviewed the CODEOWNERS files targeted by the
automation - build-failure-notification-subscriptions
pipeline. Below I list the files and cases where owners who receive build failure notifications will change.Most likely we want to modify the CODEOWNERS files before applying the effects of this PR, to keep the recipients of build failure notifications unchanged. This can be achieved by adding relevant paths to the CODEOWNERS file.
E.g. a block like:
Can be replaced with:
Additional design notes
Currently I assume the proposed
PipelineOwnerSyntheticFileName
is not present in the repository nor inCODEOWNERS
file. But we might actually want to consider adding this file path toCODEOWNERS
a valid approach, to fine-tune who gets the build notifications. Then the example above would become, for example:However, in such case, we would need to add special case that such file should not actually exist, in our validation spec: