eng/pipelines/templates/steps/publish-release.yaml (39 lines of code) (raw):

parameters: PackagePath: "not-specified" PackageFileName: "not-specfied" ReleaseName: "not-specified" ReleaseNotes: "not-specfied" PublishDevVersion: true steps: - pwsh: | $currentVersion = node -p -e "require('./packages/${{ parameters.PackagePath }}/package.json').version" $releaseNotes = "${{ parameters.ReleaseNotes }}" if ('${{ parameters.PublishDevVersion }}' -eq 'true') { $currentVersion="$currentVersion-$(Build.BuildNumber)" $releaseNotes = "Preview version of ${{ parameters.ReleaseNotes }}" } cd packages/${{ parameters.PackagePath }} npm version --no-git-tag-version $currentVersion pnpm pack npm install -g ${{ parameters.PackageFileName }}-$currentVersion.tgz if ($LASTEXITCODE) { exit $LASTEXITCODE } npx publish-release ` --token $(azuresdk-github-pat) ` --repo autorest.go ` --owner azure ` --name "${{ parameters.ReleaseName }}" ` --tag v$currentVersion ` --notes="$releaseNotes" ` --prerelease ` --editRelease false ` --assets ${{ parameters.PackageFileName }}-$currentVersion.tgz ` --target_commitish $(Build.SourceBranchName); displayName: "Publish GitHub Release ${{ parameters.PackagePath }}" - ${{ if ne(parameters.PublishDevVersion, true) }}: - script: | cd packages/${{ parameters.PackagePath }} echo "//registry.npmjs.org/:_authToken=$(azure-sdk-npm-token)" > ./.npmrc npm publish --access public displayName: "Publish to npm ${{ parameters.PackagePath }}"