fix(dev-infra): properly tag github releases as prerelease as appropriate (#40999)
Previously all github releases created by the release tooling tagged releases as `latest`. Instead releases which are created for the `next` tag on NPM should be tagged as `prerelease` for github. PR Close #40999
This commit is contained in:
		
							parent
							
								
									f05715bcac
								
							
						
					
					
						commit
						29043d9858
					
				| @ -5918,12 +5918,12 @@ class ReleaseAction { | |||||||
|      * Creates a Github release for the specified version in the configured project. |      * Creates a Github release for the specified version in the configured project. | ||||||
|      * The release is created by tagging the specified commit SHA. |      * The release is created by tagging the specified commit SHA. | ||||||
|      */ |      */ | ||||||
|     _createGithubReleaseForVersion(newVersion, versionBumpCommitSha) { |     _createGithubReleaseForVersion(newVersion, versionBumpCommitSha, prerelease) { | ||||||
|         return tslib.__awaiter(this, void 0, void 0, function* () { |         return tslib.__awaiter(this, void 0, void 0, function* () { | ||||||
|             const tagName = newVersion.format(); |             const tagName = newVersion.format(); | ||||||
|             yield this.git.github.git.createRef(Object.assign(Object.assign({}, this.git.remoteParams), { ref: `refs/tags/${tagName}`, sha: versionBumpCommitSha })); |             yield this.git.github.git.createRef(Object.assign(Object.assign({}, this.git.remoteParams), { ref: `refs/tags/${tagName}`, sha: versionBumpCommitSha })); | ||||||
|             info(green(`  ✓   Tagged v${newVersion} release upstream.`)); |             info(green(`  ✓   Tagged v${newVersion} release upstream.`)); | ||||||
|             yield this.git.github.repos.createRelease(Object.assign(Object.assign({}, this.git.remoteParams), { name: `v${newVersion}`, tag_name: tagName })); |             yield this.git.github.repos.createRelease(Object.assign(Object.assign({}, this.git.remoteParams), { name: `v${newVersion}`, tag_name: tagName, prerelease })); | ||||||
|             info(green(`  ✓   Created v${newVersion} release in Github.`)); |             info(green(`  ✓   Created v${newVersion} release in Github.`)); | ||||||
|         }); |         }); | ||||||
|     } |     } | ||||||
| @ -5955,7 +5955,7 @@ class ReleaseAction { | |||||||
|             // Verify the packages built are the correct version.
 |             // Verify the packages built are the correct version.
 | ||||||
|             yield this._verifyPackageVersions(newVersion, builtPackages); |             yield this._verifyPackageVersions(newVersion, builtPackages); | ||||||
|             // Create a Github release for the new version.
 |             // Create a Github release for the new version.
 | ||||||
|             yield this._createGithubReleaseForVersion(newVersion, versionBumpCommitSha); |             yield this._createGithubReleaseForVersion(newVersion, versionBumpCommitSha, npmDistTag === 'next'); | ||||||
|             // Walk through all built packages and publish them to NPM.
 |             // Walk through all built packages and publish them to NPM.
 | ||||||
|             for (const builtPackage of builtPackages) { |             for (const builtPackage of builtPackages) { | ||||||
|                 yield this._publishBuiltPackageToNpm(builtPackage, npmDistTag); |                 yield this._publishBuiltPackageToNpm(builtPackage, npmDistTag); | ||||||
|  | |||||||
| @ -472,7 +472,7 @@ export abstract class ReleaseAction { | |||||||
|    * The release is created by tagging the specified commit SHA. |    * The release is created by tagging the specified commit SHA. | ||||||
|    */ |    */ | ||||||
|   private async _createGithubReleaseForVersion( |   private async _createGithubReleaseForVersion( | ||||||
|       newVersion: semver.SemVer, versionBumpCommitSha: string) { |       newVersion: semver.SemVer, versionBumpCommitSha: string, prerelease: boolean) { | ||||||
|     const tagName = newVersion.format(); |     const tagName = newVersion.format(); | ||||||
|     await this.git.github.git.createRef({ |     await this.git.github.git.createRef({ | ||||||
|       ...this.git.remoteParams, |       ...this.git.remoteParams, | ||||||
| @ -485,6 +485,8 @@ export abstract class ReleaseAction { | |||||||
|       ...this.git.remoteParams, |       ...this.git.remoteParams, | ||||||
|       name: `v${newVersion}`, |       name: `v${newVersion}`, | ||||||
|       tag_name: tagName, |       tag_name: tagName, | ||||||
|  |       prerelease, | ||||||
|  | 
 | ||||||
|     }); |     }); | ||||||
|     info(green(`  ✓   Created v${newVersion} release in Github.`)); |     info(green(`  ✓   Created v${newVersion} release in Github.`)); | ||||||
|   } |   } | ||||||
| @ -522,7 +524,8 @@ export abstract class ReleaseAction { | |||||||
|     await this._verifyPackageVersions(newVersion, builtPackages); |     await this._verifyPackageVersions(newVersion, builtPackages); | ||||||
| 
 | 
 | ||||||
|     // Create a Github release for the new version.
 |     // Create a Github release for the new version.
 | ||||||
|     await this._createGithubReleaseForVersion(newVersion, versionBumpCommitSha); |     await this._createGithubReleaseForVersion( | ||||||
|  |         newVersion, versionBumpCommitSha, npmDistTag === 'next'); | ||||||
| 
 | 
 | ||||||
|     // Walk through all built packages and publish them to NPM.
 |     // Walk through all built packages and publish them to NPM.
 | ||||||
|     for (const builtPackage of builtPackages) { |     for (const builtPackage of builtPackages) { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user