ALOps NuGet Publish
Publish BC .app files as NuGet packages. Uses altool for manifest reading, pure-PowerShell .nupkg creation, and dotnet nuget push.
| Property |
Value |
| Task name (Azure DevOps) |
ALOpsNuGetPublish@3 |
| Action name (GitHub) |
alops-nugetpublish |
| Version |
3.0.0 |
| Category |
Utility |
| OS requirement |
Both |
| Preview |
yes |
Publishes Business Central .app files as NuGet packages to any NuGet-compatible feed. Reads app manifests via altool.exe GetPackageManifest, builds .nupkg files using pure-PowerShell ZIP assembly (no nuget.exe), and pushes via dotnet nuget push.
| Name |
Type |
Required |
Default |
Platform |
Description |
altool_package_version |
Text |
yes |
18.0.33.65164-beta |
Both |
Version of the microsoft.dynamics.businesscentral.development.tools NuGet package. Pin to a specific version for reproducible builds. |
authentication
| Name |
Type |
Required |
Default |
Platform |
Description |
nuget_username |
Text |
no |
(empty) |
Both |
Username for basic authentication against the NuGet source. Azure DevOps Artifacts feeds ignore NuGet API keys and require basic authentication: set any value (e.g. 'AzureDevOps') here and supply the pipeline's System.AccessToken or a PAT as NuGet Password. When empty but a password is given, 'AzureDevOps' is used. |
nuget_password |
Secret |
no |
(empty) |
Both |
Password or Personal Access Token (PAT) for basic authentication against the NuGet source. For Azure DevOps Artifacts use the pipeline's System.AccessToken (the build identity needs Contributor rights on the feed) or a PAT with Packaging (Read & write) scope. The value is written to an isolated, per-push NuGet.Config that is deleted after the push; the agent's user profile is never modified. |
nuget_source_apikey |
Secret |
no |
(empty) |
Both |
API key for feeds that authenticate pushes with X-NuGet-ApiKey (nuget.org, MyGet, BaGet, ...). Passed to dotnet nuget push --api-key. Azure DevOps Artifacts ignores API keys: supply NuGet Username / NuGet Password instead. Both may be set; the API key is then sent alongside basic authentication. |
source
| Name |
Type |
Required |
Default |
Platform |
Description |
nuget_source_uri |
Text |
yes |
(empty) |
Both |
NuGet feed URL to push packages to. |
artifact_path |
Text |
no |
(empty) |
Both |
Root folder to scan recursively for .app files. Leave empty to use the workspace directory. |
artifact_filter |
Text |
no |
*.app |
Both |
File filter pattern for selecting .app files to package and publish. |
packaging
| Name |
Type |
Required |
Default |
Platform |
Description |
suffix |
Text |
no |
(empty) |
Both |
Suffix to append to the NuGet package version (e.g. '-preview'). Leave empty for no suffix. |
use_suffix_for_dependencies_same_publisher |
Boolean |
no |
false |
Both |
When enabled, applies the version suffix to dependency version ranges for dependencies from the same publisher. |
keep_app_filename |
Boolean |
no |
false |
Both |
When enabled, uses the original .app filename as the .app entry inside the .nupkg instead of generating a standardized name. |
Outputs
| Name |
Description |
published_packages |
Semicolon-separated list of published NuGet package IDs. |
published_count |
Number of successfully published NuGet packages. |
Usage