diff --git a/azure-pipelines.release-publish.yml b/azure-pipelines.release-publish.yml index 2f3aac21446cc..7c58d3f82ae6b 100644 --- a/azure-pipelines.release-publish.yml +++ b/azure-pipelines.release-publish.yml @@ -3,17 +3,25 @@ pr: none parameters: - name: _REMINDER - default: Review & undraft the release at https://github.com/microsoft/TypeScript/releases once it appears! + displayName: Review & undraft the release at https://github.com/microsoft/TypeScript/releases once it appears! + type: boolean + default: true - name: PUBLISH_TAG + displayName: npm publish tag default: dev + values: + - dev + - beta + - rc + - latest - name: RELEASE_TITLE_NAME + displayName: GitHub release title name default: 0.0.0 Test - name: TAG_NAME + displayName: Git tag name default: v0.0.0-SetMe variables: - - name: _REMINDER - value: ${{ parameters._REMINDER }} - name: PUBLISH_TAG value: ${{ parameters.PUBLISH_TAG }} - name: RELEASE_TITLE_NAME @@ -47,11 +55,11 @@ extends: os: windows stages: - - stage: Stage_1 - displayName: Publish tarball + - stage: Publish + displayName: Publish jobs: - - job: Job_1 - displayName: Agent job + - job: tarball + displayName: Publish tarball condition: succeeded() timeoutInMinutes: 0 templateContext: @@ -66,12 +74,12 @@ extends: steps: - checkout: none - task: CmdLine@2 - displayName: Rename versioned drop to typescript.tgz + displayName: Copy versioned drop to typescript.tgz inputs: script: | pushd $(Pipeline.Workspace)/tgz ls -lhR - mv typescript-*.tgz typescript.tgz + cp typescript-*.tgz typescript.tgz - task: Npm@1 displayName: npm publish tarball inputs: @@ -79,16 +87,13 @@ extends: workingDir: $(Pipeline.Workspace)/tgz verbose: false customCommand: publish $(Pipeline.Workspace)/tgz/typescript.tgz --tag $(PUBLISH_TAG) - # This must match the service connection. + # This must match the service connection name. customEndpoint: Typescript NPM publishEndpoint: Typescript NPM - - stage: Stage_2 - displayName: Publish git tag - dependsOn: Stage_1 - jobs: - - job: Job_1 - displayName: Agent job + - job: github + displayName: Create github release + dependsOn: tarball condition: succeeded() timeoutInMinutes: 0 templateContext: @@ -104,7 +109,7 @@ extends: - task: GitHubRelease@1 displayName: GitHub release (create) inputs: - # This must match the service connection. + # This must match the service connection name. gitHubConnection: typescript-bot connection repositoryName: microsoft/TypeScript tagSource: userSpecifiedTag @@ -112,12 +117,14 @@ extends: title: TypeScript $(RELEASE_TITLE_NAME) releaseNotesSource: inline releaseNotesInline: | + assets: $(Pipeline.Workspace)/tgz/**/typescript-*.tgz - isDraft: true + isDraft: ${{ not(eq(parameters.PUBLISH_TAG, 'latest')) }} addChangeLog: false