GithubPipeline: ConfigurePipeline: az-cli: Customize identity resource group and naming#401
Conversation
3116c9f to
ecdb268
Compare
There was a problem hiding this comment.
Pull request overview
Adds support in the AKS Desktop GitHub Pipeline flow to customize the Azure resource group used for managed identity creation and to base identity naming on a “project name” rather than namespace.
Changes:
- Added Azure CLI helpers to fetch a resource group’s location and create a resource group.
- Updated workload identity setup to (attempt to) ensure an identity-specific resource group exists and to name identities via
projectName. - Updated GitHub Pipeline wizard/orchestration and UI to pass
projectName, allow editing the identity resource group, and display repo full name in the selector.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| plugins/aks-desktop/src/utils/azure/az-cli.ts | Adds resource-group location lookup and resource-group creation helpers for the pipeline flow. |
| plugins/aks-desktop/src/components/GitHubPipeline/hooks/useWorkloadIdentitySetup.ts | Creates/uses an identity-specific resource group and switches identity naming input to projectName. |
| plugins/aks-desktop/src/components/GitHubPipeline/hooks/useGitHubPipelineOrchestration.ts | Plumbs optional projectName through the orchestration hook return value. |
| plugins/aks-desktop/src/components/GitHubPipeline/components/WorkloadIdentitySetup.tsx | Adds identity RG input field and updates identity naming to use projectName. |
| plugins/aks-desktop/src/components/GitHubPipeline/components/RepoSelector.tsx | Displays repo full name instead of short name. |
| plugins/aks-desktop/src/components/GitHubPipeline/GitHubPipelineWizard.tsx | Accepts and passes projectName into the workload identity setup step. |
| plugins/aks-desktop/src/components/ConfigurePipeline/ConfigurePipelineButton.tsx | Provides projectName when launching the pipeline wizard from a project. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
ecdb268 to
1253948
Compare
|
Can you please add the issue for this to the PR description? |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
illume
left a comment
There was a problem hiding this comment.
Can you please add some tests?
Some steps to manually test in the PR would also be helpful.
e8bcdb9 to
164783f
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 29 out of 29 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
164783f to
5c7e992
Compare
Fixes #420
Summary
rg-<projectName>id-<projectName>-github)projectNamethrough the pipeline wizard to the workload identity setup componentowner/repo) in the repo selector instead of just the repo namecreateResourceGroupandgetResourceGroupLocationaz-cli helpers to ensure the identity resource group exists before creating the managed identityType of Change
Changes Made
projectNameto the wizardprojectNameprop through orchestration hookTextFieldfor identity resource group, remove unusednamespaceprop, sync state whenprojectNamechanges; show TextField in error state for retrycreating-rgstep to ensure identity resource group exists before identity creation; useidentityResourceGroupfor identity and credential operationsprojectNamethrough and expose it in the resultfullName(owner/repo) instead of justnamegetResourceGroupLocation,resourceGroupExists, andcreateResourceGroupfunctions usingrunAzCommandwith input validationTest Plan
rg-<projectName>id-<projectName>-githubowner/repoformat (not just repo name)npm test -- --runand confirm all new tests pass