Skip to content

Add Kubernetes Multi-Cluster Provisioning PoC#2224

Merged
cb-github-robot merged 1 commit intocloud-barista:mainfrom
seokho-son:main
Nov 25, 2025
Merged

Add Kubernetes Multi-Cluster Provisioning PoC#2224
cb-github-robot merged 1 commit intocloud-barista:mainfrom
seokho-son:main

Conversation

@seokho-son
Copy link
Copy Markdown
Member

New PoC API

image

example request.

image

@seokho-son
Copy link
Copy Markdown
Member Author

CC @hanizang77

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a new Proof of Concept (PoC) API endpoint for provisioning multiple Kubernetes clusters in parallel across different cloud providers. The implementation enables users to create K8s clusters concurrently by providing a common specification and image for each cluster, with support for automatic cluster name generation based on a prefix and CSP.

Key changes:

  • New REST endpoint /ns/{nsId}/k8sMultiClusterDynamic for parallel multi-cluster provisioning
  • Core provisioning logic using goroutines for concurrent cluster creation
  • Auto-generation of cluster names using format {namePrefix}-{csp}-{number} when namePrefix is provided
  • Partial success handling with HTTP 207 Multi-Status response for scenarios where some clusters succeed

Reviewed changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
src/interface/rest/server/server.go Registers the new multi-cluster provisioning endpoint
src/interface/rest/server/resource/k8scluster.go Implements REST handler with partial success handling via HTTP 207
src/interface/rest/docs/swagger.yaml Adds OpenAPI/Swagger documentation for the new endpoint
src/interface/rest/docs/docs.go Adds generated Swagger documentation in Go format
src/core/model/k8scluster.go Defines request/response models for multi-cluster operations
src/core/infra/provisioning.go Implements parallel cluster creation logic using goroutines and channels

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Signed-off-by: Seokho Son <shsongist@gmail.com>
@seokho-son
Copy link
Copy Markdown
Member Author

/approve

@github-actions github-actions bot added the approved This PR is approved and will be merged soon. label Nov 25, 2025
@cb-github-robot cb-github-robot merged commit f99ab17 into cloud-barista:main Nov 25, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved This PR is approved and will be merged soon.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants