Skip to content

Commit

Permalink
Merge pull request GitTools#1459 from arturcic/feature/reusable-action
Browse files Browse the repository at this point in the history
Refactor Azure Marketplace publishing into a reusable action
  • Loading branch information
arturcic authored Jan 22, 2025
2 parents 925c821 + 1d4850c commit 89e709a
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 38 deletions.
41 changes: 41 additions & 0 deletions .github/actions/publish-azure/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: 'Publish Azure Extension'
description: 'Publish Azure Extension to Marketplace'
inputs:
mode:
description: 'Release mode'
required: true
major:
description: 'Major version'
required: true
minor:
description: 'Minor version'
required: true
patch:
description: 'Patch version'
required: true
token:
description: 'Token for Azure DevOps'
required: true

runs:
using: 'composite'
steps:
- name: Publish Azure extension
shell: pwsh
run: |
$date = Get-Date -format "yyMMddHH"
$mode = "${{ inputs.mode }}"
$major = "${{ inputs.major }}"
$minor = "${{ inputs.minor }}"
$patch = "${{ inputs.patch }}"
$version = "$major.$minor.$patch.$date"
$vsix = "dist/gittools.gittools-$version.vsix"
echo "Release mode: $mode"
echo "Version: $version"
npm run publish:prepare -- --mode $mode --version $version
npm run publish:azure:local -- --env mode=$mode version=$version --output-path $vsix
npm run publish:azure:marketplace -- --token ${{ inputs.token }} --env mode=$mode version=$version
echo "vsix=$vsix" >> $env:GITHUB_OUTPUT
54 changes: 16 additions & 38 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,26 +34,15 @@ jobs:
- name: Use GitVersion
id: gitversion # step id used as reference for output values
uses: ./gitversion/execute
- run: |
$mode = "test"
$date = Get-Date -format "yyMMddHH"
$version = "${{steps.gitversion.outputs.majorMinorPatch}}.$date"
$major = "${{steps.gitversion.outputs.major}}"
$minor = "${{steps.gitversion.outputs.minor}}"
$patch = "${{steps.gitversion.outputs.patch}}"
$vsix = "dist/gittools.gittools-$version.vsix"
echo "Release mode: $mode"
echo "Version: $version"
npm run publish:prepare -- --mode $mode --version $version
npm run publish:azure:local -- --env mode=$mode version=$version --output-path $vsix
npm run publish:azure:marketplace -- --token ${{ secrets.TFX_TOKEN }} --env mode=$mode version=$version
echo "vsix=$vsix" >> $env:GITHUB_OUTPUT
- name: Publish To Azure Marketplace
id: publish-azure
name: Publish Azure extension
uses: ./.github/actions/publish-azure
with:
mode: 'test'
major: ${{ steps.gitversion.outputs.major }}
minor: ${{ steps.gitversion.outputs.minor }}
patch: ${{ steps.gitversion.outputs.patch }}
token: ${{ secrets.TFX_TOKEN }}
release:
if: github.event.release.prerelease == false
runs-on: ${{ matrix.os }}
Expand Down Expand Up @@ -94,26 +83,15 @@ jobs:
name: "v${{ steps.gitversion.outputs.majorMinorPatch }}"
isPreRelease: ${{ github.event.release.prerelease }}
targetcommitish: "main"
- run: |
$mode = "prod"
$date = Get-Date -format "yyMMddHH"
$version = "${{steps.gitversion.outputs.majorMinorPatch}}.$date"
$major = "${{steps.gitversion.outputs.major}}"
$minor = "${{steps.gitversion.outputs.minor}}"
$patch = "${{steps.gitversion.outputs.patch}}"
$vsix = "dist/gittools.gittools-$version.vsix"
echo "Release mode: $mode"
echo "Version: $version"
npm run publish:prepare -- --mode $mode --version $version
npm run publish:azure:local -- --env mode=$mode version=$version --output-path $vsix
npm run publish:azure:marketplace -- --token ${{ secrets.TFX_TOKEN }} --env mode=$mode version=$version
echo "vsix=$vsix" >> $env:GITHUB_OUTPUT
- name: Publish To Azure Marketplace
id: publish-azure
name: Publish Azure extension
uses: ./.github/actions/publish-azure
with:
mode: 'prod'
major: ${{ steps.gitversion.outputs.major }}
minor: ${{ steps.gitversion.outputs.minor }}
patch: ${{ steps.gitversion.outputs.patch }}
token: ${{ secrets.TFX_TOKEN }}
- name: Add Assets
uses: ./gitreleasemanager/addasset
with:
Expand Down

0 comments on commit 89e709a

Please sign in to comment.