From 098fb1049f27f8b87d426e2ada84de84ff2782db Mon Sep 17 00:00:00 2001 From: Laurent Luce Date: Wed, 25 Sep 2024 10:53:00 -0700 Subject: [PATCH 1/2] fix: Clarify the manager deploy kontrol service location argument --- kardinal-cli/cmd/root.go | 12 +++++++----- kardinal-cli/deployment/deployment.go | 7 ++++--- kardinal-cli/kontrol/location.go | 19 +++++++++++++++---- 3 files changed, 26 insertions(+), 12 deletions(-) diff --git a/kardinal-cli/cmd/root.go b/kardinal-cli/cmd/root.go index 1dd94e0e..fbb28c2f 100644 --- a/kardinal-cli/cmd/root.go +++ b/kardinal-cli/cmd/root.go @@ -6,7 +6,6 @@ import ( "errors" "fmt" "io" - "kardinal.cli/kubernetes" "log" "net" "net/http" @@ -17,6 +16,8 @@ import ( "strings" "time" + "kardinal.cli/kubernetes" + "gopkg.in/yaml.v3" "kardinal.cli/consts" "kardinal.cli/multi_os_cmd_executor" @@ -471,9 +472,10 @@ var topologyManifestCmd = &cobra.Command{ } var deployManagerCmd = &cobra.Command{ - Use: fmt.Sprintf("deploy [kontrol location] accepted values: %s and %s ", kontrol.KontrolLocationLocalMinikube, kontrol.KontrolLocationKloudKontrol), + Use: fmt.Sprintf("deploy [kardinal-kontrol service location] accepted values: %s and %s ", kontrol.KontrolLocationLocal, kontrol.KontrolLocationKloud), Short: "Deploy Kardinal manager into the cluster", - ValidArgs: []string{kontrol.KontrolLocationLocalMinikube, kontrol.KontrolLocationKloudKontrol}, + Long: "The Kardinal Manager retrieves the latest configuration from the Kardinal Kontrol service and applies changes to the user K8S topology. The Kardinal Kontrol service can be the one running in the Kardinal Cloud or can be the one deployed locally.", + ValidArgs: []string{kontrol.KontrolLocationLocal, kontrol.KontrolLocationKloud}, Args: cobra.MatchAll(cobra.ExactArgs(1), cobra.OnlyValidArgs), Run: func(cmd *cobra.Command, args []string) { kontrolLocation := args[0] @@ -1087,10 +1089,10 @@ func getKontrolBaseURLForManager() (string, error) { ) switch kontrolLocation { - case kontrol.KontrolLocationLocalMinikube: + case kontrol.KontrolLocationLocal: scheme = httpSchme host = localMinikubeKontrolAPIHost - case kontrol.KontrolLocationKloudKontrol: + case kontrol.KontrolLocationKloud: scheme = httpsScheme host = kloudKontrolAPIHost default: diff --git a/kardinal-cli/deployment/deployment.go b/kardinal-cli/deployment/deployment.go index 40a89ec7..02911748 100644 --- a/kardinal-cli/deployment/deployment.go +++ b/kardinal-cli/deployment/deployment.go @@ -3,9 +3,10 @@ package deployment import ( "bytes" "context" - "kardinal.cli/kubernetes" "text/template" + "kardinal.cli/kubernetes" + "kardinal.cli/kontrol" "github.com/kurtosis-tech/stacktrace" @@ -207,9 +208,9 @@ func DeployKardinalManagerInCluster(ctx context.Context, clusterResourcesURL str var imagePullPolicy string switch kontrolLocation { - case kontrol.KontrolLocationLocalMinikube: + case kontrol.KontrolLocationLocal: imagePullPolicy = "IfNotPresent" - case kontrol.KontrolLocationKloudKontrol: + case kontrol.KontrolLocationKloud: imagePullPolicy = "Always" default: stacktrace.NewError("invalid Kontrol location: %s", kontrolLocation) diff --git a/kardinal-cli/kontrol/location.go b/kardinal-cli/kontrol/location.go index ad3e9dfd..8bd2f03d 100644 --- a/kardinal-cli/kontrol/location.go +++ b/kardinal-cli/kontrol/location.go @@ -1,15 +1,19 @@ package kontrol import ( + "fmt" + "os" + "github.com/kurtosis-tech/stacktrace" "github.com/sirupsen/logrus" "kardinal.cli/host_machine_directories" - "os" ) const ( - KontrolLocationLocalMinikube = "local-minikube" - KontrolLocationKloudKontrol = "kloud-kontrol" + KontrolLocationLocal = "local-kardinal-kontrol" + KontrolLocationKloud = "kloud-kardinal-kontrol" + OldKontrolLocationLocal = "local-minikube" + OldKontrolLocationKloud = "kloud-kontrol" kontrolLocationFilePermissions os.FileMode = 0644 ) @@ -33,9 +37,10 @@ func GetKontrolLocation() (string, error) { return "", stacktrace.Propagate(err, "An error occurred getting the Kontrol location filepath") } + fmt.Println(kontrolLocationFilepath) _, err = os.Stat(kontrolLocationFilepath) if err != nil { - return "", stacktrace.Propagate(err, "An error occurred getting the Kontrol location file info") + return "", stacktrace.Propagate(err, "An error occurred getting the Kontrol location file info") } kontrolLocationFileBytes, err := os.ReadFile(kontrolLocationFilepath) @@ -44,6 +49,12 @@ func GetKontrolLocation() (string, error) { } kontrolLocationFileStr := string(kontrolLocationFileBytes) + switch kontrolLocationFileStr { + case OldKontrolLocationLocal: + kontrolLocationFileStr = KontrolLocationLocal + case OldKontrolLocationKloud: + kontrolLocationFileStr = KontrolLocationKloud + } logrus.Infof("Using Kontrol location %s", kontrolLocationFileStr) return kontrolLocationFileStr, nil From 84876cf31ad5bf6950f4357e4ed652c864bf92b6 Mon Sep 17 00:00:00 2001 From: Laurent Luce Date: Wed, 25 Sep 2024 11:13:03 -0700 Subject: [PATCH 2/2] Fix CI --- .github/workflows/ci-e2e-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-e2e-tests.yml b/.github/workflows/ci-e2e-tests.yml index 4da217fa..f269050e 100644 --- a/.github/workflows/ci-e2e-tests.yml +++ b/.github/workflows/ci-e2e-tests.yml @@ -88,7 +88,7 @@ jobs: - name: Deploy Kardinal manager run: | - KARDINAL_CLI_DEV_MODE=TRUE /tmp/kardinal-cli manager deploy local-minikube + KARDINAL_CLI_DEV_MODE=TRUE /tmp/kardinal-cli manager deploy local-kardinal-kontrol - name: Deploy boutique demo manifest run: |