# Configure build and start for ASP.NET Core

Build and start for an ASP.NET Core app on Ample. Verified on ASP.NET Core: the app built and started with the documented commands and answered on its public HTTPS URL. Build and start:

```bash
dotnet publish -c Release -o out
```

in the builder, then

```bash
dotnet <your-entry-file>.dll
```

on the dotnet-10 template with `ASPNETCORE_URLS` bound to `PORT`.

## Prerequisites
- An ASP.NET Core project (dotnet publish -c Release -o out in the builder, then dotnet .dll on the dotnet-10 template with ASPNETCORE_URLS bound to PORT)
- An Ample account token with `servers:write`

## Workflow Steps

1. **Build and start**  
   `dotnet publish -c Release -o out` in the builder, then `dotnet <your-entry-file>.dll` on the dotnet-10 template with `ASPNETCORE_URLS` bound to `PORT`; the server must bind `0.0.0.0` on `PORT`.

2. **Deploy**  
   Run the synchronous deploy once and read the result.  
   `ample deploy . --name <your-app-name> --public`

3. **Verify**  
   Fetch the live URL on the example; on failure read the build and runtime logs.  
   `ample logs --kind build`

## Tested Configuration
- **Template:** dotnet-10
- **Runtime:** dotnet
- **Size:** s-1vcpu-1gb
- **Build Command:** `dotnet publish -c Release -o out`
- **Start Command:** `ASPNETCORE_URLS=http://0.0.0.0:$PORT dotnet out/$(basename $(ls out/*.runtimeconfig.json | head -n 1) .runtimeconfig.json).dll`

## Limitations
- Verified on the dotnet-10 template at s-1vcpu-1gb; other sizes and ASP.NET Core major versions are not verified.
- Region, compliance attestations, and request-duration limits are unknown and not claimed.

## Cost Estimate
- **Currency:** USD
- **Monthly Amount:** $5.00
- **Basis:** size prices from pricing.toml (loaded by the API) at build revision `1ac5595375130d45290090e82ed0f554ccd45405-dirty`
- **Note:** Always-on monthly price of the tested sizes; apps auto-pause when idle.

## Evidence Summary
- **Kind:** canary_run
- **Summary:** ASP.NET Core pattern fixture deployed on Ample (verified build and start).
- **Observed At:** 2026-09-21T01:15:54Z
- **Implementation Revision:** 50dbac567d2c5cc8e55e6c748a646be0025d9cfb-dirty (CLI 0.1.21)
- **Expires At:** 2027-03-20T01:15:54Z

## Next Actions
1. **Browse Catalog**  
   *Action ID:* browse-catalog
   *Method:* GET
   *Relative Path:* /v1/catalog

2. **Search Recipes**  
   *Action ID:* search-recipes  
   *Method:* POST  
   *Relative Path:* /v1/catalog/search
   *Parameters:* `{ "body": { "limit": 5, "query": "Configure build and start for ASP.NET Core" }}`

3. **Browse ASP.NET Core**  
   *Action ID:* browse:stack:framework-asp-net-core  
   *Method:* GET  
   *Relative Path:* /v1/catalog/nodes/stack%3Aframework-asp-net-core
