Skip to content

Publish NuGet Package #21

Publish NuGet Package

Publish NuGet Package #21

Workflow file for this run

name: Publish NuGet Package
on:
push:
branches: ['nightly', "publish_bugfixes"] # Only runs on pushes to the 'nightly' branch
workflow_dispatch: # Allows manual runs from the Actions tab
jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
fetch-depth: 0 # Ensure all tags are fetched
- name: Install .NET SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.x.x'
- name: Extract Latest Tag as Version
id: get_version
run: echo "GIT_TAG_LATEST=$(git describe --tags --abbrev=0 | sed 's/^v//')" >> "$GITHUB_ENV"
- name: Debug GIT_TAG_LATEST
run: echo "Version extracted; $GIT_TAG_LATEST"
- name: Restore Dependencies
run: dotnet restore src/Components/src/Components.fsproj
- name: Install NPM Dependencies
run: npm install
working-directory: src/Components
# Creates css file with current tailwind style
- name: Run Prebuild Script
run: npm run prebuild:net
working-directory: src/Components
- name: Build Components Project
run: dotnet build src/Components/src/Components.fsproj --configuration Release /p:GitTag=$GIT_TAG_LATEST
- name: Build Shared Project
run: dotnet build src/Shared/Shared.fsproj --configuration Release /p:GitTag=$GIT_TAG_LATEST
- name: Pack Components NuGet Package
run: dotnet pack src/Components/src/Components.fsproj --configuration Release --output nupkgs /p:GitTag=$GIT_TAG_LATEST
- name: Pack Shared NuGet Package
run: dotnet pack src/Shared/Shared.fsproj --configuration Release --output nupkgs /p:GitTag=$GIT_TAG_LATEST
- name: Publish to NuGet
run: dotnet nuget push nupkgs/*.nupkg --api-key ${{ secrets.NUGET_KEY }} --source https://api.nuget.org/v3/index.json --skip-duplicate