Repository navigation
Deploy to External AKS and EKS Clusters feature spec - #11644
Merged
sylvainsf merged 11 commits intoMay 13, 2026
Merged
Conversation
Signed-off-by: Zach Casper <zachcasper@microsoft.com>
Signed-off-by: Zach Casper <zachcasper@microsoft.com>
zachcasper
had a problem deploying
to
external-contributor-approval
April 14, 2026 18:59 — with
GitHub Actions
Failure
Contributor
There was a problem hiding this comment.
Pull request overview
This PR adds a set of design/plan documents for enabling Radius recipe execution against external Kubernetes clusters (EKS and AKS), including the proposed environment schema/API additions (target, clusterType, clusterName) and a phased implementation task plan.
Changes:
- Added feature spec covering user stories, requirements, and validation rules for external cluster targeting.
- Added implementation plan + research notes describing the intended EKS/AKS kubeconfig acquisition approach and impacted code areas.
- Added API contract examples, a quickstart, and a task breakdown/checklist for executing the work.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
| specs/003-external-k8s-deploy/spec.md | Defines user stories, requirements, validation rules, and scope for external EKS/AKS targeting |
| specs/003-external-k8s-deploy/plan.md | Implementation plan, impacted components, and project structure for the feature |
| specs/003-external-k8s-deploy/research.md | Technical research on EKS token generation, AKS credential flow, Terraform/Bicep integration |
| specs/003-external-k8s-deploy/data-model.md | Proposed data model changes + validation rules + flow diagram |
| specs/003-external-k8s-deploy/contracts/environments-api.md | API contract changes and example payloads/error responses |
| specs/003-external-k8s-deploy/quickstart.md | Step-by-step usage guide for EKS/AKS scenarios |
| specs/003-external-k8s-deploy/tasks.md | Phased work plan with explicit file-level tasks |
| specs/003-external-k8s-deploy/checklists/requirements.md | Spec quality checklist for readiness |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Zach Casper <zachcasper@microsoft.com>
zachcasper
had a problem deploying
to
external-contributor-approval
April 15, 2026 19:55 — with
GitHub Actions
Failure
Signed-off-by: Zach Casper <zachcasper@microsoft.com>
zachcasper
had a problem deploying
to
external-contributor-approval
April 15, 2026 20:05 — with
GitHub Actions
Failure
willdavsmith
reviewed
May 6, 2026
Reshrahim
reviewed
May 6, 2026
nithyatsu
reviewed
May 6, 2026
nithyatsu
reviewed
May 6, 2026
willdavsmith
reviewed
May 6, 2026
willdavsmith
reviewed
May 6, 2026
willdavsmith
reviewed
May 6, 2026
willtsai
reviewed
May 6, 2026
sk593
reviewed
May 6, 2026
kachawla
reviewed
May 6, 2026
kachawla
reviewed
May 6, 2026
willtsai
reviewed
May 6, 2026
nithyatsu
reviewed
May 6, 2026
kachawla
reviewed
May 6, 2026
kachawla
reviewed
May 6, 2026
Co-authored-by: Karishma Chawla <kachawla@microsoft.com> Signed-off-by: Zach Casper <zachcasper@microsoft.com>
Contributor
Author
|
In today's review, the general consensus was:
Given this, one possibility is to model the environment as: In the future, this can be generalized to support generic Kubernetes cluster with the addition of a Kubernetes credential resource such as: |
…g the design-notes template. Signed-off-by: Zach Casper <zachcasper@microsoft.com>
Reshrahim
pushed a commit
to Reshrahim/radius
that referenced
this pull request
Jun 15, 2026
…11644) This pull request introduces the foundational design documents and implementation plan for supporting deployment to external Kubernetes clusters (EKS and AKS) in Radius. It defines the new data model, validation rules, API contract, and outlines the required code changes and project structure. The documentation covers how users can configure environments and credentials to target external clusters, and provides a quickstart guide for both EKS and AKS scenarios. The most important changes are: **Data Model & API Changes** - Extended the `ProvidersKubernetes` model with new fields: `target`, `clusterType`, and `clusterName`, including detailed validation rules and cross-entity dependencies. - Updated the API contract for `Radius.Core/environments` to support these new fields, with examples and validation error responses for incorrect configurations. **Implementation Plan & Project Structure** - Added an implementation plan detailing technical context, constitution checks, affected code areas, and the introduction of a new `pkg/kubernetes/kubeconfig/` package for cloud-specific kubeconfig acquisition. **User-Facing Documentation** - Provided a quickstart guide with step-by-step instructions for deploying to external EKS and AKS clusters, covering credential registration, environment creation, and verification. - Added a specification quality checklist to ensure requirements are complete, clear, and ready for planning.# Description ## Type of change - This pull request is a design-note Fixes: radius-project#6934 ## Contributor checklist Please verify that the PR meets the following requirements, where applicable: - An overview of proposed schema changes is included in a linked GitHub issue. - [ ] Yes <!-- TaskRadio schema --> - [X] Not applicable <!-- TaskRadio schema --> - A design document PR is created in the [design-notes repository](https://github.com/radius-project/design-notes/), if new APIs are being introduced. - [ ] Yes <!-- TaskRadio design-pr --> - [X] Not applicable <!-- TaskRadio design-pr --> - The design document has been reviewed and approved by Radius maintainers/approvers. - [ ] Yes <!-- TaskRadio design-review --> - [X] Not applicable <!-- TaskRadio design-review --> - A PR for the [samples repository](https://github.com/radius-project/samples) is created, if existing samples are affected by the changes in this PR. - [ ] Yes <!-- TaskRadio samples-pr --> - [X] Not applicable <!-- TaskRadio samples-pr --> - A PR for the [documentation repository](https://github.com/radius-project/docs) is created, if the changes in this PR affect the documentation or any user facing updates are made. - [ ] Yes <!-- TaskRadio docs-pr --> - [X] Not applicable <!-- TaskRadio docs-pr --> - A PR for the [recipes repository](https://github.com/radius-project/recipes) is created, if existing recipes are affected by the changes in this PR. - [ ] Yes <!-- TaskRadio recipes-pr --> - [X] Not applicable <!-- TaskRadio recipes-pr --> --------- Signed-off-by: Zach Casper <zachcasper@microsoft.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Karishma Chawla <kachawla@microsoft.com> Signed-off-by: Reshma Abdul Rahim <reshmarahim.abdul@microsoft.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces the foundational design documents and implementation plan for supporting deployment to external Kubernetes clusters (EKS and AKS) in Radius. It defines the new data model, validation rules, API contract, and outlines the required code changes and project structure. The documentation covers how users can configure environments and credentials to target external clusters, and provides a quickstart guide for both EKS and AKS scenarios.
The most important changes are:
Data Model & API Changes
ProvidersKubernetesmodel with new fields:target,clusterType, andclusterName, including detailed validation rules and cross-entity dependencies.Radius.Core/environmentsto support these new fields, with examples and validation error responses for incorrect configurations.Implementation Plan & Project Structure
pkg/kubernetes/kubeconfig/package for cloud-specific kubeconfig acquisition.User-Facing Documentation
Type of change
Fixes: Manage applications in multiple environments on separate Kubernetes clusters #6934
Contributor checklist
Please verify that the PR meets the following requirements, where applicable: