Skip to content

fix(kickstart): prefer az acr build and safeguards validation in cloudshell - #2376

Open
David Gamero (davidgamero) wants to merge 1 commit into
Azure:mainfrom
davidgamero:fix/kickstart-cloudshell-acr-build-and-safeguards
Open

fix(kickstart): prefer az acr build and safeguards validation in cloudshell#2376
David Gamero (davidgamero) wants to merge 1 commit into
Azure:mainfrom
davidgamero:fix/kickstart-cloudshell-acr-build-and-safeguards

Conversation

@davidgamero

@davidgamero David Gamero (davidgamero) commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator

kickstart agent should always prefer az acr build command to use remote builds instead of docker daemon local builds

add deployment safeguards validation to skills for manifest generation in kickstart

…safeguards

Kickstart runs in Azure Cloud Shell, which has no Docker daemon, but the phase
skills assumed a local one. Generate listed `docker build` first with ACR as a
fallback, and its image-content check (`docker run ... ls`) was local-only
while the exit criteria still demanded the entry point be confirmed present.
Review then made that same unrunnable check a hard FAIL, so in Cloud Shell the
agent would either stall or fabricate a pass.

Images are now built with `az acr build` unconditionally — server-side on the
ACR remote task builders, never `docker build`. One build path keeps the
validated image and the deployed image identical. Entry-point verification is
a build-time `RUN test -f <entrypoint>` assertion in the Dockerfile, which
fails the ACR build directly and works before the cluster exists. Also
documents the Cloud Shell specifics that still matter: clouddrive clone
target, AcrPush requirement, context upload cost, idle-session handling.

Separately, the safeguard checklist was a pod-security rule set, not the AKS
Deployment Safeguards policy set — 9 of the 10 policies were unrepresented,
including the mutating ones (resource requests, anti-affinity/topology spread,
reserved system pool taints). Omitting those doesn't block admission; the
cluster rewrites the object, so the deployed state silently stops matching the
generated YAML. The checklist is now split into Part A (the 10 policies, with
mutation outcomes) and Part B (pod security), Generate emits compliant
manifests up front, and Deploy gains a `safeguard` failure class plus a
server-side dry-run preview.
@davidgamero
David Gamero (davidgamero) force-pushed the fix/kickstart-cloudshell-acr-build-and-safeguards branch from 8234fe9 to b782630 Compare August 7, 2026 20:31
@davidgamero
David Gamero (davidgamero) marked this pull request as ready for review August 7, 2026 20:33
@pauldotyu Paul Yu (pauldotyu) added this to the 2.6.0 milestone Aug 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants