-
Notifications
You must be signed in to change notification settings - Fork 66
Description
Feature Request: Run Container Assist from VS Code AKS Extension
Summary
Enable the ability to run Container Assist directly from the VS Code AKS extension to help developers quickly scaffold containerisation and deployment artifacts for their project.
Problem Statement
Today, generating containerisation and deployment assets often requires context switching, manual setup, or external tooling. This slows down iteration and creates friction, especially for developers who are already working within VS Code and managing AKS workloads.
Proposed Experience (High-Level Flow)
When a project is opened in VS Code:
- The extension detects a valid project in the workspace
- A contextual command becomes available from the file explorer
- Users can trigger Container Assist in a guided, low-friction way
Proposed Tasks / Phases
1. Workspace & Project Detection
Goal: Ensure the feature is only available when it makes sense.
- Detect when a filesystem-based project is loaded in VS Code
- Validate basic project signals (e.g., presence of source files, repo root)
- Gracefully disable or hide commands when no valid project is detected
2. Context Menu Command (Right-Click)
Goal: Provide a discoverable, intuitive entry point.
-
Add a right-click menu item on the project root folder:
- “Deploy AKS”
-
Add a sub-menu option:
- “Run Containerisation Assist”
-
Only enable the menu when project detection criteria are met
3. Container Assist Invocation
Goal: Launch Container Assist in guided mode.
-
Run Container Assist from within VS Code
-
Collect required inputs through guided prompts:
- Azure Tenant
- Subscription
- AKS Cluster
- Managed Namespace
-
Use the collected context as input for scaffolding
4. Artifact Generation & Scaffolding
Goal: Generate deployment-ready assets with minimal user effort.
- Scaffold containerisation assets (e.g., Dockerfile)
- Generate or update Kubernetes manifests as needed
- Populate files in appropriate locations in the project
- Avoid overwriting existing user files without confirmation
5. GitHub Workflow Enablement (Optional / Default)
Goal: Help users ship with best-practice automation.
- Offer to generate and enable a default AKS GitHub workflow
- Use sensible defaults aligned with AKS and GitHub standards
- Allow users to opt in or skip during the flow
6. Safety, UX & Rollout Considerations
- Support feature flagging for early rollout
- Clear messaging about what files will be created or modified
- Easy cancellation and rollback where possible
- Telemetry (if applicable) to understand usage and friction points
Benefits
- Reduces friction for first-time AKS deployments
- Keeps developers inside VS Code
- Encourages best practices by default
- Enables faster iteration and learning
- Improves overall AKS developer experience
Open Questions
- What minimal signals define a “valid” project?
- Should Container Assist be extensible per language/runtime?
- How much customization should be exposed vs opinionated defaults?