`kars up` fails on Azure: ACR `trustPolicy` is hardcoded to `enabled`, which Azure now rejects
- Dominant language
- Rust
- Stars
- 42
- Forks
- 10
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 19
Description
### Summary
`kars up` cannot complete on Azure. The ARM deployment fails because `modules/acr.bicep` sets the ACR Content Trust policy unconditionally, and Azure now rejects that value.
### Version
- `@kars-runtime/cli@0.1.26` (latest published at time of writing)
- `--release v0.1.26`
- Azure CLI 2.85.0
### Error
```
ContentTrustUnsupported: The value 'enabled' for property 'status' in 'trustPolicy'
is not supported. Content Trust is being deprecated and will be completely removed
on March 31, 2028. Refer to https://aka.ms/acr/dctdeprecation
```
Surfaced as a nested failure under the `-acr` deployment.
### Root cause
`dist/deploy/bicep/modules/acr.bicep`:
```bicep
policies: {
trustPolicy: {
type: 'Notary'
status: 'enabled'
}
}
```
This is unconditional. It is also baked into the compiled `main.json`. There is no CLI flag or Bicep parameter that disables it, so no supported configuration avoids the failure.
### Reproduction
```bash
npx @kars-runtime/cli@0.1.26 up \
--region \
--resource-group \
--cluster-name \
--release v0.1.26 \
--yes
```
Fails during `az deployment group create`.
### Impact
Blocks first deployment entirely. Because `v0.1.26` is the latest published release, there is no newer artifact to move to.
Note that the deployment fails *after* ACR, Log Analytics, Application Insights and an Azure OpenAI account have already been created, and these are not rolled back (filed separately).
### Suggested fix
Remove the `trustPolicy` block. Content Trust / Notary v1 is deprecated; the modern equivalent is Notation + `cosign`-style artifact signing verified at admission, which is orthogonal to the registry policy.
Removing the block locally was sufficient to get past this error.
Contributor guide
Research direction
Start with dist/deploy/bicep/modules/acr.bicep and inspect the corresponding trustPolicy in the compiled main.json. Reproduce the failure with the provided npx kars up command and verify that the ARM deployment succeeds without the rejected policy value.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure
- Domain
- cloud
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 84/100