diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ee3416b5943..3bb20ddcfd8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,6 +24,7 @@ jobs: outputs: skip_workflow: ${{ (steps.check_for_changes.outputs.no_changes == 'true' || steps.check_for_changes.outputs.only_changed == 'true') && 'true' || 'false' }} VERSION_SUFFIX_OVERRIDE: ${{ steps.compute_version_suffix.outputs.VERSION_SUFFIX_OVERRIDE }} + EXTENSION_VERSION_OVERRIDE: ${{ steps.compute_version_suffix.outputs.EXTENSION_VERSION_OVERRIDE }} steps: - name: Checkout code @@ -58,6 +59,10 @@ jobs: Write-Host "Computed VERSION_SUFFIX_OVERRIDE=$VERSION_SUFFIX" "VERSION_SUFFIX_OVERRIDE=$VERSION_SUFFIX" | Out-File -FilePath $Env:GITHUB_OUTPUT -Append -Encoding utf8 + $EXTENSION_VERSION = "99.0.$($Env:PR_NUMBER)" + Write-Host "Computed EXTENSION_VERSION_OVERRIDE=$EXTENSION_VERSION" + "EXTENSION_VERSION_OVERRIDE=$EXTENSION_VERSION" | Out-File -FilePath $Env:GITHUB_OUTPUT -Append -Encoding utf8 + tests: uses: ./.github/workflows/tests.yml name: Tests @@ -65,6 +70,7 @@ jobs: if: ${{ github.repository_owner == 'microsoft' && needs.prepare_for_ci.outputs.skip_workflow != 'true' }} with: versionOverrideArg: ${{ needs.prepare_for_ci.outputs.VERSION_SUFFIX_OVERRIDE }} + extensionVersionOverride: ${{ needs.prepare_for_ci.outputs.EXTENSION_VERSION_OVERRIDE }} # This job is used for branch protection. It fails if any of the dependent jobs failed results: diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 406a599bdcc..18132a46e8f 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -7,6 +7,9 @@ on: versionOverrideArg: required: false type: string + extensionVersionOverride: + required: false + type: string jobs: setup_for_tests: @@ -294,6 +297,11 @@ jobs: run: npm install - name: Run tests run: npm test + - name: Override extension version for PR builds + if: ${{ inputs.extensionVersionOverride != '' }} + env: + EXTENSION_VERSION: ${{ inputs.extensionVersionOverride }} + run: npm version "$EXTENSION_VERSION" --no-git-tag-version - name: Package VSIX run: npm exec @vscode/vsce -- package --pre-release -o out/aspire-extension.vsix - name: Upload VSIX diff --git a/extension/Extension.proj b/extension/Extension.proj index 2aa1b95558d..a9ab10d136d 100644 --- a/extension/Extension.proj +++ b/extension/Extension.proj @@ -11,20 +11,30 @@ - + + <_EffectiveVersion Condition="'$(ExtensionVersionOverride)' != ''">$(ExtensionVersionOverride) + <_EffectiveVersion Condition="'$(ExtensionVersionOverride)' == ''">$(_ExtractedVersion) <_VscodeOutputDir>$(ArtifactsPackagesDir)vscode - <_VsixPath>$(_VscodeOutputDir)\aspire-vscode-$(_ExtractedVersion).vsix - <_ManifestPath>$(_VscodeOutputDir)\aspire-vscode-$(_ExtractedVersion).manifest + <_VsixPath>$(_VscodeOutputDir)\aspire-vscode-$(_EffectiveVersion).vsix + <_ManifestPath>$(_VscodeOutputDir)\aspire-vscode-$(_EffectiveVersion).manifest + + + + @@ -37,7 +47,7 @@ IgnoreStandardErrorWarningFormat="true" WorkingDirectory="$(ExtensionSrcDir)" /> - + +