Description
New issue checklist
- I searched for existing GitHub issues
- I read pipeline troubleshooting guide
- I checked how to collect logs
Task name
GitHubReleaseV1
Task version
1.x
Issue Description
We use the Azure DevOps GitHub Release task (in an ADO classic (not yaml) pipeline) for Babylon.js. What we are finding is that when a PR is merged, and it contains a commit that references an issue or PR from the fork in which it was authored, that issue # gets included in the release notes, though in that context (the original fork) it will reference a completely different issue.
As an example, you can see the release notes here: https://github.com/BabylonJS/Babylon.js/releases/tag/8.12.1
These reference issue #5, which in fact is in a commit message here: https://github.com/BabylonJS/Babylon.js/pull/15869/commits
But as mentioned, this was just a PR reference within a fork (e.g. intra-fork PR, not a PR to the main fork), it is not a reference to issue #5 in the original fork where the actual PR is being merged.
Environment type (Please select at least one enviroment where you face this issue)
- Self-Hosted
- Microsoft Hosted
- VMSS Pool
- Container
Azure DevOps Server type
dev.azure.com (formerly visualstudio.com)
Azure DevOps Server Version (if applicable)
No response
Operation system
ubuntu-latest
Relevant log output
There is no error message. As mentioned above, it is simply picking up invalid related issues for the release notes.
Full task logs with system.debug enabled
Starting: GitHub release (create)
Task : GitHub Release
Description : Create, edit, or delete a GitHub release
Version : 1.248.1
Author : Microsoft Corporation
Help : https://aka.ms/AA5vv5o
Searching for tags associated with target commit: master
Found a tag for target commit: master
##[warning]Error occured while parsing the labels. For yaml syntax see: https://aka.ms/AA3m1bq
Computing changes made in this release...
Fetching the latest published release...
Found the latest published release: https://github.com/BabylonJS/Babylon.js/releases/tag/8.11.0
Fetching the list of commits since the last published release...
Found the list of changes.
Changes computed successfully.
Release notes file: /home/vsts/work/1/s is a directory and not a file.
Creating a release for tag: 8.12.1
Uploading assets...
Searching for file(s) matching '/home/vsts/work/1/a/cdnSnapshot.zip'.
Uploading file: '/home/vsts/work/1/a/cdnSnapshot.zip'.
Uploaded file successfully: '/home/vsts/work/1/a/cdnSnapshot.zip'
All assets uploaded successfully.
Release created successfully at https://github.com/BabylonJS/Babylon.js/releases/tag/8.12.1
Finishing: GitHub release (create)
Repro steps
1. Fork some repo
2. Within that fork, make some changes in a new branch (BranchA)
3. Within that fork, create another branch (BranchB) off of the first branch (BranchA) with some additional changes
4. Create a PR to merge the BranchB into the BranchA (this is all still within the fork), and merge this PR
5. Create a PR to merge BranchA into the main branch of the main fork, and merge this PR
6. Create a new release, using the GitHub Release ADO task
7. Observe that the release notes reference an issue # that is the PR # of the first intra-fork PR, and that issue # is effectively a random issue within the main fork, and thus is nonsense in the context of the release notes