1
0
Files
am-wd/win/publish-nuget/action.yml

30 lines
1.1 KiB
YAML

name: 'publish-nuget'
description: 'Publishes a NuGet package.'
inputs:
api-key:
description: 'The API key to use for publishing the package.'
required: true
package-name:
description: 'The name of the NuGet package contains (contains check).'
default: ''
source-url:
description: 'The URL of the NuGet server to publish to. Defaults to https://api.nuget.org/v3/index.json.'
default: 'https://api.nuget.org/v3/index.json'
runs:
using: 'composite'
steps:
- name: Publish NuGet package(s)
shell: powershell
run: |
$nugetFiles = Get-ChildItem -Recurse -File -Filter "*.nupkg"
if (![string]::IsNullOrWhiteSpace("${{ inputs.package-name }}")) {
$nugetFiles = $nugetFiles | Where-Object { $_.BaseName -match "${{ inputs.package-name }}" }
}
foreach ($nugetFile in $nugetFiles) {
Write-Host "Publishing package: $($nugetFile.Name)"
dotnet nuget push "$($nugetFile.FullName)" --api-key "${{ inputs.api-key }}" --source "${{ inputs.source-url }}" --skip-duplicate
}