Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This article applies to: ✔️ Aspire CLI 9.4.0 and later versions.
Name
aspire publish - Generates deployment artifacts for an Aspire AppHost project.
Important
This command is in preview and subject to change.
Synopsis
aspire publish [options] [[--] <additional arguments>...]
Description
The aspire publish command publishes resources by serializing them to disk. When this command is run, Aspire invokes registered PublishingCallbackAnnotation annotations for resources, in the order they're declared. These annotations serialize a resource so that it can be consumed by deployment tools.
The Aspire CLI uses the following logic, in order, to determine which AppHost project to process:
The
--projectoption.This option specifies the path to a project to process.
The
.aspire/settings.jsonconfig file.If the config file path exists in the current directory, it's used. If not, the CLI walks up the directory structure looking for the config file. If it finds a config file, it reads the
appHostPathsetting value as the project to process.Searches the current directory and subdirectories.
Starting in the current directory, the CLI gathers all AppHost projects from that directory and below. If a single project is discovered, it's automatically selected. If multiple projects are discovered, they're printed to the terminal for the user to manually select one of the projects.
Once a project is selected, either automatically or manually, the path to the project is stored in the
.aspire/settings.jsonconfig file.
The command performs the following steps to run an Aspire AppHost:
- Creates or modifies the
.aspire/settings.jsonconfig file in the current directory, and sets theappHostPathconfig value to the path of the AppHost project file. - Installs or verifies that Aspire's local hosting certificates are installed and trusted.
- Builds the AppHost project and its resources.
- Starts the AppHost and its resources.
- Invokes all PublishingCallbackAnnotation annotations for resources.
Options
The following options are available:
--Delimits arguments to
aspire publishfrom arguments for the AppHost. All arguments after this delimiter are passed to the AppHost.-
--projectThe path to the Aspire AppHost project file.
-o, --output-pathThe output path for the generated artifacts. Defaults the current directory.
-
-?, -h, --helpPrints help and usage documentation for the available commands and options.
-
-d, --debugEnable debug logging to the console, which prints detailed information about what Aspire CLI is doing when a command is run.
-
--wait-for-debuggerWait for a debugger to attach before running a command.
Examples
Search the current directory structure for AppHost projects to build and publish:
aspire publishPublish a specific AppHost project:
aspire publish --project './projects/apphost/orchestration.AppHost.csproj'Publish a specific AppHost project with arguments:
aspire publish --project './projects/apphost/orchestration.AppHost.csproj' -- -fast