feat: add pack-nightly & release-tag workflow.

This commit is contained in:
Zhang Dian
2024-12-28 20:11:07 +08:00
parent 58e1ef5b66
commit df41ffafdb
2 changed files with 213 additions and 0 deletions

73
.github/workflows/pack-nightly.yml vendored Normal file
View File

@@ -0,0 +1,73 @@
name: Pack Nightly
on:
workflow_dispatch:
inputs:
Version_Prefix:
description: 'Version Prefix'
required: true
default: '1.6.999'
type: string
Ursa:
description: 'Pack Ursa'
required: true
default: 'true'
type: boolean
Ursa_Themes_Semi:
description: 'Pack Ursa.Themes.Semi'
required: true
default: 'true'
type: boolean
PrismExtension:
description: 'Pack Prism Extension'
required: true
default: 'false'
type: boolean
ReactiveUIExtension:
description: 'Pack ReactiveUI Extension'
required: true
default: 'false'
type: boolean
jobs:
Pack_Nightly:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4.1.1
- name: Get Version
run: |
VERSION_TIMESTAMP=$(date +'%Y%m%d%H%M%S')
VERSION="${{ github.event.inputs.Version_Prefix }}-nightly-${VERSION_TIMESTAMP}"
echo "VERSION=$VERSION" >> $GITHUB_ENV
- name: Pack Ursa
if: ${{ github.event.inputs.Ursa == 'true' }}
run: dotnet pack ./src/Ursa -o ./nugets /p:Version=${{ env.VERSION }}
- name: Pack Ursa.Themes.Semi
if: ${{ github.event.inputs.Ursa_Themes_Semi == 'true' }}
run: dotnet pack ./src/Ursa.Themes.Semi -o ./nugets /p:Version=${{ env.VERSION }}
- name: Pack Prism Extension
if: ${{ github.event.inputs.PrismExtension == 'true' }}
run: dotnet pack ./src/Ursa.PrismExtension -o ./nugets /p:Version=${{ env.VERSION }}
- name: Pack ReactiveUI Extension
if: ${{ github.event.inputs.ReactiveUIExtension == 'true' }}
run: dotnet pack ./src/Ursa.ReactiveUIExtension -o ./nugets /p:Version=${{ env.VERSION }}
- name: Add NuGet Source
run: dotnet nuget add source ${{ secrets.IRIHI_NUGET_FEED }} -n irihi.tech -u ${{ secrets.IRIHI_NUGET_USERNAME }} -p ${{ secrets.IRIHI_NUGET_PASSWORD }} --store-password-in-clear-text
- name: Publish Nightly Package
run: dotnet nuget push "./nugets/*.nupkg" --api-key ${{ secrets.IRIHI_NUGET_API_KEY }} --source irihi.tech --skip-duplicate
- name: Upload a Build Artifact
uses: actions/upload-artifact@v4.3.1
with:
name: nugets
path: ./nugets
if: always()