diff --git a/README.md b/README.md index 0acfca5f..e81f5a22 100644 --- a/README.md +++ b/README.md @@ -127,7 +127,7 @@ INFO[0000] Using tenant UUID 58d33536-3c9e-4110-aa83-bf112ae94a49 3. Deploy the voting-app application with Kardinal ```bash -kardinal deploy --docker-compose ./examples/voting-app/docker-compose.yaml +kardinal deploy --k8s-manifest ./examples/voting-app/k8s-manifest.yaml ``` 4. Check the current topology in the cloud Kontrol FE using this URL: https://app.kardinal.dev/{use-your-tenant-UUID-here}/traffic-configuration @@ -144,7 +144,7 @@ minikube tunnel 1. Create a new flow to test a development `voting-app-ui-v2` version in production ```bash -kardinal flow create voting-app-ui kurtosistech/demo-voting-app-ui-v2 --docker-compose ./examples/voting-app/docker-compose.yaml +kardinal flow create voting-app-ui kurtosistech/demo-voting-app-ui-v2 --k8s-manifest ./examples/voting-app/k8s-manifest.yaml ``` 2. Check how the topology has changed, to reflect both prod and the dev version, in the cloud Kontrol FE using this URL: https://app.kardinal.dev/{use-your-tenant-UUID-here}/traffic-configuration @@ -155,7 +155,7 @@ kardinal flow create voting-app-ui kurtosistech/demo-voting-app-ui-v2 --docker-c 1. Remove the flow created for the `voting-app-ui-v2` ```bash -kardinal flow delete --docker-compose ./examples/voting-app/docker-compose.yaml +kardinal flow delete --k8s-manifest ./examples/voting-app/k8s-manifest.yaml ``` 2. Check the topology again to, it's showing only the production version as the beginning, in the cloud Kontrol FE using this URL: https://app.kardinal.dev/{use-your-tenant-UUID-here}/traffic-configuration @@ -226,7 +226,7 @@ cd kardinal-playground/voting-app-demo 6. Deploy the voting-app application with Kardinal: ```bash -kardinal deploy --docker-compose docker-compose.yaml +kardinal deploy --k8s-manifest k8s-manifest.yaml ``` 7. Check the initial Kardinal traffic configuration: @@ -261,7 +261,7 @@ This will set up port-forwarding for the production version of the voting app. 12. To create a new development flow: ```bash -kardinal flow create voting-app-ui voting-app-ui-dev -d compose.yml +kardinal flow create voting-app-ui voting-app-ui-dev --k8s-manifest k8s-manifest.yml ``` 13. After creating the development flow, check the Kardinal traffic configuration again: @@ -281,7 +281,7 @@ Now you can access both the production and development versions: 15. To remove the development flow: ```bash -kardinal flow delete -d compose.yml +kardinal flow delete --k8s-manifest k8s-manifest.yml ``` 16. After deleting the development flow, check the Kardinal traffic configuration once more: diff --git a/examples/voting-app/k8s-manifest.yaml b/examples/voting-app/k8s-manifest.yaml new file mode 100644 index 00000000..a2491d7f --- /dev/null +++ b/examples/voting-app/k8s-manifest.yaml @@ -0,0 +1,124 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + app: redis-prod + version: v1 + name: redis-prod + namespace: voting-app +spec: + ports: + - name: tcp-redis + port: 6379 + protocol: TCP + targetPort: 6379 + selector: + app: redis-prod +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + app: redis-prod + version: v1 + name: redis-prod-v1 + namespace: voting-app +spec: + replicas: 1 + selector: + matchLabels: + app: redis-prod + version: v1 + strategy: + rollingUpdate: + maxSurge: 25% + maxUnavailable: 25% + type: RollingUpdate + template: + metadata: + annotations: + sidecar.istio.io/inject: "true" + labels: + app: redis-prod + version: v1 + spec: + containers: + - name: redis-prod + image: bitnami/redis:6.0.8 + env: + - name: ALLOW_EMPTY_PASSWORD + value: "yes" + - name: REDIS_PORT_NUMBER + value: "6379" + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 250m + memory: 256Mi + ports: + - containerPort: 6379 + name: redis + +--- +apiVersion: v1 +kind: Service +metadata: + labels: + app: voting-app-ui + version: v1 + name: voting-app-ui + namespace: voting-app +spec: + ports: + - name: http + port: 80 + protocol: TCP + targetPort: 80 + selector: + app: voting-app-ui +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + app: voting-app-ui + version: v1 + name: voting-app-ui-v1 + namespace: voting-app +spec: + replicas: 1 + selector: + matchLabels: + app: voting-app-ui + version: v1 + strategy: + rollingUpdate: + maxSurge: 25% + maxUnavailable: 25% + type: RollingUpdate + template: + metadata: + annotations: + sidecar.istio.io/inject: "true" + labels: + app: voting-app-ui + version: v1 + spec: + containers: + - name: voting-app-ui + image: kurtosistech/demo-voting-app-ui + imagePullPolicy: IfNotPresent + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 250m + memory: 256Mi + ports: + - containerPort: 80 + env: + - name: REDIS + value: "redis-prod" diff --git a/kardinal-cli/cmd/root.go b/kardinal-cli/cmd/root.go index 8e5a6306..16b8fe75 100644 --- a/kardinal-cli/cmd/root.go +++ b/kardinal-cli/cmd/root.go @@ -2,13 +2,12 @@ package cmd import ( "context" - "encoding/json" "fmt" "log" "net/http" + "os" + "strings" - "github.com/compose-spec/compose-go/cli" - "github.com/compose-spec/compose-go/types" "github.com/kurtosis-tech/stacktrace" "github.com/sirupsen/logrus" "github.com/spf13/cobra" @@ -18,6 +17,9 @@ import ( api "github.com/kurtosis-tech/kardinal/libs/cli-kontrol-api/api/golang/client" api_types "github.com/kurtosis-tech/kardinal/libs/cli-kontrol-api/api/golang/types" + appv1 "k8s.io/api/apps/v1" + corev1 "k8s.io/api/core/v1" + "k8s.io/client-go/kubernetes/scheme" ) const ( @@ -37,7 +39,7 @@ const ( httpsScheme = httpSchme + "s" ) -var composeFile string +var kubernetesManifestFile string var rootCmd = &cobra.Command{ Use: "kardinal", @@ -59,16 +61,16 @@ var deployCmd = &cobra.Command{ Short: "Deploy services", Args: cobra.ExactArgs(0), Run: func(cmd *cobra.Command, args []string) { - services, err := parseComposeFile(composeFile) + serviceConfigs, err := parseKubernetesManifestFile(kubernetesManifestFile) if err != nil { - log.Fatalf("Error loading compose file: %v", err) + log.Fatalf("Error loading k8s manifest file: %v", err) } tenantUuid, err := tenant.GetOrCreateUserTenantUUID() if err != nil { log.Fatal("Error getting or creating user tenant UUID", err) } - deploy(tenantUuid.String(), services) + deploy(tenantUuid.String(), serviceConfigs) }, } @@ -78,9 +80,9 @@ var createCmd = &cobra.Command{ Args: cobra.ExactArgs(2), Run: func(cmd *cobra.Command, args []string) { serviceName, imageName := args[0], args[1] - services, err := parseComposeFile(composeFile) + serviceConfigs, err := parseKubernetesManifestFile(kubernetesManifestFile) if err != nil { - log.Fatalf("Error loading compose file: %v", err) + log.Fatalf("Error loading k8s manifest file: %v", err) } tenantUuid, err := tenant.GetOrCreateUserTenantUUID() @@ -89,7 +91,7 @@ var createCmd = &cobra.Command{ } fmt.Printf("Creating service %s with image %s in development mode...\n", serviceName, imageName) - createDevFlow(tenantUuid.String(), services, imageName, serviceName) + createDevFlow(tenantUuid.String(), serviceConfigs, imageName, serviceName) }, } @@ -98,16 +100,16 @@ var deleteCmd = &cobra.Command{ Short: "Delete services", Args: cobra.ExactArgs(0), Run: func(cmd *cobra.Command, args []string) { - services, err := parseComposeFile(composeFile) + serviceConfigs, err := parseKubernetesManifestFile(kubernetesManifestFile) if err != nil { - log.Fatalf("Error loading compose file: %v", err) + log.Fatalf("Error loading k8s manifest file: %v", err) } tenantUuid, err := tenant.GetOrCreateUserTenantUUID() if err != nil { log.Fatal("Error getting or creating user tenant UUID", err) } - deleteFlow(tenantUuid.String(), services) + deleteFlow(tenantUuid.String(), serviceConfigs) fmt.Print("Deleting dev flow") }, @@ -159,69 +161,71 @@ func init() { flowCmd.AddCommand(createCmd, deleteCmd) managerCmd.AddCommand(deployManagerCmd, removeManagerCmd) - flowCmd.PersistentFlags().StringVarP(&composeFile, "docker-compose", "d", "", "Path to the Docker Compose file") - flowCmd.MarkPersistentFlagRequired("docker-compose") - deployCmd.PersistentFlags().StringVarP(&composeFile, "docker-compose", "d", "", "Path to the Docker Compose file") - deployCmd.MarkPersistentFlagRequired("docker-compose") + flowCmd.PersistentFlags().StringVarP(&kubernetesManifestFile, "k8s-manifest", "k", "", "Path to the K8S manifest file") + flowCmd.MarkPersistentFlagRequired("k8s-manifest") + deployCmd.PersistentFlags().StringVarP(&kubernetesManifestFile, "k8s-manifest", "k", "", "Path to the K8S manifest file") + deployCmd.MarkPersistentFlagRequired("k8s-manifest") } func Execute() error { return rootCmd.Execute() } -func loadComposeFile(filename string) (*types.Project, error) { - opts, err := cli.NewProjectOptions([]string{filename}, - cli.WithOsEnv, - cli.WithDotEnv, - cli.WithName(projectName), - ) - if err != nil { - return nil, err - } +func loadKubernetesManifestFile(filename string) ([]byte, error) { - project, err := cli.ProjectFromOptions(opts) + fileBytes, err := os.ReadFile(filename) if err != nil { - return nil, err + return fileBytes, stacktrace.Propagate(err, "attempted to read kubernetes manifest file with path '%s' but failed", filename) } - return project, nil + return fileBytes, nil } -func parseComposeFile(composeFile string) ([]types.ServiceConfig, error) { - project, err := loadComposeFile(composeFile) +func parseKubernetesManifestFile(kubernetesManifestFile string) ([]api_types.ServiceConfig, error) { + fileBytes, err := loadKubernetesManifestFile(kubernetesManifestFile) if err != nil { - log.Fatalf("Error loading compose file: %v", err) + log.Fatalf("Error loading kubernetest manifest file: %v", err) return nil, err } - fmt.Println("Services in the Docker Compose file:") - for _, service := range project.Services { - fmt.Println(service.Name) - } - - projectYAML, err := project.MarshalJSON() - if err != nil { - log.Fatal(err) - return nil, err + manifest := string(fileBytes) + // TODO: Check format of manifest file + blocks := strings.Split(manifest, "---") + if len(blocks)%2 != 0 { + return nil, stacktrace.NewError("The manifest should contain pairs of service / deployment specifications") } - - var dockerCompose map[string]interface{} - err = json.Unmarshal(projectYAML, &dockerCompose) - if err != nil { - log.Fatalf("error: %v", err) - return nil, err + serviceConfigs := make([]api_types.ServiceConfig, len(blocks)/2) + decode := scheme.Codecs.UniversalDeserializer().Decode + for index, spec := range strings.Split(manifest, "---") { + if len(spec) == 0 { + continue + } + obj, _, err := decode([]byte(spec), nil, nil) + if err != nil { + continue + } + switch obj := obj.(type) { + case *corev1.Service: + service := obj + serviceConfigs[index/2].Service = *service + case *appv1.Deployment: + deployment := obj + serviceConfigs[index/2].Deployment = *deployment + default: + return nil, stacktrace.NewError("An error occurred parsing the manifest because of an unsupported kubernetes type") + } } - return project.Services, nil + return serviceConfigs, nil } -func createDevFlow(tenantUuid api_types.Uuid, services []types.ServiceConfig, imageLocator, serviceName string) { +func createDevFlow(tenantUuid api_types.Uuid, serviceConfigs []api_types.ServiceConfig, imageLocator, serviceName string) { ctx := context.Background() body := api_types.PostTenantUuidFlowCreateJSONRequestBody{ - DockerCompose: &services, - ServiceName: &serviceName, - ImageLocator: &imageLocator, + ServiceConfigs: &serviceConfigs, + ServiceName: &serviceName, + ImageLocator: &imageLocator, } client := getKontrolServiceClient() @@ -233,11 +237,11 @@ func createDevFlow(tenantUuid api_types.Uuid, services []types.ServiceConfig, im fmt.Printf("Response: %s\n", string(resp.Body)) } -func deploy(tenantUuid api_types.Uuid, services []types.ServiceConfig) { +func deploy(tenantUuid api_types.Uuid, serviceConfigs []api_types.ServiceConfig) { ctx := context.Background() body := api_types.PostTenantUuidDeployJSONRequestBody{ - DockerCompose: &services, + ServiceConfigs: &serviceConfigs, } client := getKontrolServiceClient() @@ -257,11 +261,11 @@ func deploy(tenantUuid api_types.Uuid, services []types.ServiceConfig) { logrus.Infof("Visit: %s", trafficConfigurationURL) } -func deleteFlow(tenantUuid api_types.Uuid, services []types.ServiceConfig) { +func deleteFlow(tenantUuid api_types.Uuid, serviceConfigs []api_types.ServiceConfig) { ctx := context.Background() body := api_types.PostTenantUuidFlowDeleteJSONRequestBody{ - DockerCompose: &services, + ServiceConfigs: &serviceConfigs, } client := getKontrolServiceClient() diff --git a/kardinal-cli/go.mod b/kardinal-cli/go.mod index 6e5c20d0..9382d344 100644 --- a/kardinal-cli/go.mod +++ b/kardinal-cli/go.mod @@ -6,10 +6,10 @@ toolchain go1.22.3 require ( github.com/adrg/xdg v0.4.0 - github.com/compose-spec/compose-go v1.20.2 github.com/google/uuid v1.5.0 github.com/kurtosis-tech/stacktrace v0.0.0-20211028211901-1c67a77b5409 github.com/spf13/cobra v1.8.0 + k8s.io/api v0.30.2 k8s.io/apimachinery v0.30.2 k8s.io/client-go v0.30.2 ) @@ -42,7 +42,6 @@ require ( google.golang.org/protobuf v1.33.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect - k8s.io/api v0.30.2 // indirect k8s.io/klog/v2 v2.120.1 // indirect k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect k8s.io/utils v0.0.0-20230726121419-3b25d923346b // indirect @@ -54,24 +53,12 @@ require ( replace github.com/kurtosis-tech/kardinal/libs/cli-kontrol-api => ../libs/cli-kontrol-api require ( - github.com/distribution/reference v0.5.0 // indirect - github.com/docker/go-connections v0.4.0 // indirect - github.com/docker/go-units v0.5.0 // indirect github.com/imdario/mergo v0.3.16 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/kurtosis-tech/kardinal/libs/cli-kontrol-api v0.0.0 - github.com/mattn/go-shellwords v1.0.12 // indirect - github.com/mitchellh/mapstructure v1.5.0 // indirect - github.com/opencontainers/go-digest v1.0.0 // indirect - github.com/pkg/errors v0.9.1 // indirect github.com/rogpeppe/go-internal v1.12.0 // indirect github.com/sirupsen/logrus v1.9.3 github.com/spf13/pflag v1.0.5 // indirect - github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f // indirect - github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect - github.com/xeipuuv/gojsonschema v1.2.0 // indirect - golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1 // indirect - golang.org/x/sync v0.7.0 // indirect golang.org/x/sys v0.20.0 // indirect gopkg.in/yaml.v3 v3.0.1 ) diff --git a/kardinal-cli/go.sum b/kardinal-cli/go.sum index a294d9c3..7a61d33a 100644 --- a/kardinal-cli/go.sum +++ b/kardinal-cli/go.sum @@ -4,19 +4,11 @@ github.com/adrg/xdg v0.4.0/go.mod h1:N6ag73EX4wyxeaoeHctc1mas01KZgsj5tYiAIwqJE/E github.com/apapsch/go-jsonmerge/v2 v2.0.0 h1:axGnT1gRIfimI7gJifB699GoE/oq+F2MU7Dml6nw9rQ= github.com/apapsch/go-jsonmerge/v2 v2.0.0/go.mod h1:lvDnEdqiQrp0O42VQGgmlKpxL1AP2+08jFMw88y4klk= github.com/bmatcuk/doublestar v1.1.1/go.mod h1:UD6OnuiIn0yFxxA2le/rnRU1G4RaI4UvFv1sNto9p6w= -github.com/compose-spec/compose-go v1.20.2 h1:u/yfZHn4EaHGdidrZycWpxXgFffjYULlTbRfJ51ykjQ= -github.com/compose-spec/compose-go v1.20.2/go.mod h1:+MdqXV4RA7wdFsahh/Kb8U0pAJqkg7mr4PM9tFKU8RM= github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/distribution/reference v0.5.0 h1:/FUIFXtfc/x2gpa5/VGfiGLuOIdYa1t65IKK2OFGvA0= -github.com/distribution/reference v0.5.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= -github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ= -github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= -github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= -github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxERmMY4rD+g= github.com/emicklei/go-restful/v3 v3.11.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= github.com/evanphx/json-patch v4.12.0+incompatible h1:4onqiflcdA9EOZ4RxV643DvftH5pOlLGNtQ5lPWQu84= @@ -72,10 +64,6 @@ github.com/kurtosis-tech/stacktrace v0.0.0-20211028211901-1c67a77b5409 h1:YQTATi github.com/kurtosis-tech/stacktrace v0.0.0-20211028211901-1c67a77b5409/go.mod h1:y5weVs5d9wXXHcDA1awRxkIhhHC1xxYJN8a7aXnE6S8= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= -github.com/mattn/go-shellwords v1.0.12 h1:M2zGm7EW6UQJvDeQxo4T51eKPurbeFbe8WtebGE2xrk= -github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y= -github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= -github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= @@ -89,8 +77,6 @@ github.com/onsi/ginkgo/v2 v2.15.0 h1:79HwNRBAZHOEwrczrgSOPy+eFTTlIGELKy5as+ClttY github.com/onsi/ginkgo/v2 v2.15.0/go.mod h1:HlxMHtYF57y6Dpf+mc5529KKmSq9h2FpCF+/ZkwUxKM= github.com/onsi/gomega v1.31.0 h1:54UJxxj6cPInHS3a35wm6BK/F9nHYueZ1NVujHDrnXE= github.com/onsi/gomega v1.31.0/go.mod h1:DW9aCi7U6Yi40wNVAvT6kzFnEVEI5n3DloYBiKiT6zk= -github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= -github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= @@ -115,19 +101,11 @@ github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f h1:J9EGpcZtP0E/raorCMxlFGSTBrsSlaDGf3jU/qvAE2c= -github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= -github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= -github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= -github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74= -github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1 h1:MGwJjxBy0HJshjDNfLsYO8xppfqWlA5ZT9OhtUUhTNw= -golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= @@ -142,8 +120,6 @@ golang.org/x/oauth2 v0.10.0/go.mod h1:kTpgurOux7LqtuxjuyZa4Gj2gdezIt/jQtGnNFfypQ golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -185,8 +161,6 @@ gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gotest.tools/v3 v3.4.0 h1:ZazjZUfuVeZGLAmlKKuyv3IKP5orXcwtOwDQH6YVr6o= -gotest.tools/v3 v3.4.0/go.mod h1:CtbdzLSsqVhDgMtKsx03ird5YTGB3ar27v0u/yKBW5g= k8s.io/api v0.30.2 h1:+ZhRj+28QT4UOH+BKznu4CBgPWgkXO7XAvMcMl0qKvI= k8s.io/api v0.30.2/go.mod h1:ULg5g9JvOev2dG0u2hig4Z7tQ2hHIuS+m8MNZ+X6EmI= k8s.io/apimachinery v0.30.2 h1:fEMcnBj6qkzzPGSVsAZtQThU62SmQ4ZymlXRC5yFSCg= diff --git a/kardinal-cli/gomod2nix.toml b/kardinal-cli/gomod2nix.toml index b0ace4d7..7ad25b6b 100644 --- a/kardinal-cli/gomod2nix.toml +++ b/kardinal-cli/gomod2nix.toml @@ -79,9 +79,6 @@ schema = 3 [mod."github.com/chzyer/test"] version = "v0.0.0-20180213035817-a1ea475d72b1" hash = "sha256-U0irpUSqegh7Nzg1ErPuyjESOcIXXOWf7ikKMbES2mY=" - [mod."github.com/compose-spec/compose-go"] - version = "v1.20.2" - hash = "sha256-uICczxxRYLAW4jMHEsNxcOUBoCT5l5AMSrexHJ3xTcA=" [mod."github.com/cpuguy83/go-md2man/v2"] version = "v2.0.3" hash = "sha256-FAMxR5eBO9LQp6ev1b7zaPUS5aoNz1GtsPpoArjiJVw=" @@ -97,15 +94,6 @@ schema = 3 [mod."github.com/dgryski/go-rendezvous"] version = "v0.0.0-20200823014737-9f7001d12a5f" hash = "sha256-n/7xo5CQqo4yLaWMSzSN1Muk/oqK6O5dgDOFWapeDUI=" - [mod."github.com/distribution/reference"] - version = "v0.5.0" - hash = "sha256-nTlqurp/J/xOZeR0JcJMmE4GUHMMd5I+EOR7huzYuok=" - [mod."github.com/docker/go-connections"] - version = "v0.4.0" - hash = "sha256-GHNIjOuuNp5lFQ308+nDNwQPGESCVV7bCUxSW5ZxZlc=" - [mod."github.com/docker/go-units"] - version = "v0.5.0" - hash = "sha256-iK/V/jJc+borzqMeqLY+38Qcts2KhywpsTk95++hImE=" [mod."github.com/emicklei/go-restful/v3"] version = "v3.11.0" hash = "sha256-Kp5ndPvj1PhK0nscM1pNNK2Q4ahUuLED/baEgL9pKNo=" @@ -310,15 +298,9 @@ schema = 3 [mod."github.com/mattn/go-isatty"] version = "v0.0.20" hash = "sha256-qhw9hWtU5wnyFyuMbKx+7RB8ckQaFQ8D+8GKPkN3HHQ=" - [mod."github.com/mattn/go-shellwords"] - version = "v1.0.12" - hash = "sha256-H7sLKwLzQmcrkEa4SpkHFSpkrpWmX7foOGiKswBUdhs=" [mod."github.com/microcosm-cc/bluemonday"] version = "v1.0.25" hash = "sha256-/crG5s6cDrJ55nkDBwugLUpY7U+vQuHpCkKm7nnN8Zc=" - [mod."github.com/mitchellh/mapstructure"] - version = "v1.5.0" - hash = "sha256-ztVhGQXs67MF8UadVvG72G3ly0ypQW0IRDdOOkjYwoE=" [mod."github.com/moby/spdystream"] version = "v0.2.0" hash = "sha256-Feme5UoWuBCvnLPKw1ozKkF3SM7PAjjPFQZ3TJhghR0=" @@ -346,9 +328,6 @@ schema = 3 [mod."github.com/onsi/gomega"] version = "v1.31.0" hash = "sha256-a7Bmw1MpIgZNgWenBUEh/R/IpUFVUnDL4zaFznU0ILo=" - [mod."github.com/opencontainers/go-digest"] - version = "v1.0.0" - hash = "sha256-cfVDjHyWItmUGZ2dzQhCHgmOmou8v7N+itDkLZVkqkQ=" [mod."github.com/pelletier/go-toml/v2"] version = "v2.0.9" hash = "sha256-mLpNBZOK72qPpForSmzQkDrqR5xzmpUdM/0XxB2AYFA=" @@ -439,15 +418,6 @@ schema = 3 [mod."github.com/x448/float16"] version = "v0.8.4" hash = "sha256-VKzMTMS9pIB/cwe17xPftCSK9Mf4Y6EuBEJlB4by5mE=" - [mod."github.com/xeipuuv/gojsonpointer"] - version = "v0.0.0-20180127040702-4e3ac2762d5f" - hash = "sha256-OEW9nOR3EeMzvqvqpdAgowpZlbXPLWM0JT+5bwWOxo8=" - [mod."github.com/xeipuuv/gojsonreference"] - version = "v0.0.0-20180127040603-bd5ef7bd5415" - hash = "sha256-ZbXA+ASQrTgBQzasUKC9vznrOGpquYyWr+uwpm46fvU=" - [mod."github.com/xeipuuv/gojsonschema"] - version = "v1.2.0" - hash = "sha256-1ERBEvxj3pvHkMS2mvmvmYRi8jgAaTquo5hwjDLAEdc=" [mod."github.com/yosssi/ace"] version = "v0.0.5" hash = "sha256-0HnNZUypGGoQxFX214/eF7RJ9KxYpb56Q5Rn2tryOLM=" @@ -464,8 +434,8 @@ schema = 3 version = "v0.23.0" hash = "sha256-6hZjb/OazWFBef0C/aH63l49YQnzCh2vpIduzyfSSG8=" [mod."golang.org/x/exp"] - version = "v0.0.0-20230713183714-613f0c0eb8a1" - hash = "sha256-VLE9CCOYpTdyBWaQ1YxXpGOBS74wpIR3JJ+JVzNyEkQ=" + version = "v0.0.0-20220303212507-bbda1eaf7a17" + hash = "sha256-E8mRbh+ptVwyqnxBfYEtJ8pGqjWUvxUxVsz9vXxDIo4=" [mod."golang.org/x/mod"] version = "v0.17.0" hash = "sha256-CLaPeF6uTFuRDv4oHwOQE6MCMvrzkUjWN3NuyywZjKU=" @@ -535,9 +505,6 @@ schema = 3 [mod."gopkg.in/yaml.v3"] version = "v3.0.1" hash = "sha256-FqL9TKYJ0XkNwJFnq9j0VvJ5ZUU1RvH/52h/f5bkYAU=" - [mod."gotest.tools/v3"] - version = "v3.4.0" - hash = "sha256-mohKBcuKT29Illk/Gm7Bu5E8QxhRYr6sEGPn/oux65k=" [mod."istio.io/api"] version = "v1.22.1-0.20240524024004-b6815be0740d" hash = "sha256-crSFKGbjxvJRenCJVCTc4bgVl4//h3jDugNMjmUSQM4=" diff --git a/kardinal-manager/gomod2nix.toml b/kardinal-manager/gomod2nix.toml index b0ace4d7..7ad25b6b 100644 --- a/kardinal-manager/gomod2nix.toml +++ b/kardinal-manager/gomod2nix.toml @@ -79,9 +79,6 @@ schema = 3 [mod."github.com/chzyer/test"] version = "v0.0.0-20180213035817-a1ea475d72b1" hash = "sha256-U0irpUSqegh7Nzg1ErPuyjESOcIXXOWf7ikKMbES2mY=" - [mod."github.com/compose-spec/compose-go"] - version = "v1.20.2" - hash = "sha256-uICczxxRYLAW4jMHEsNxcOUBoCT5l5AMSrexHJ3xTcA=" [mod."github.com/cpuguy83/go-md2man/v2"] version = "v2.0.3" hash = "sha256-FAMxR5eBO9LQp6ev1b7zaPUS5aoNz1GtsPpoArjiJVw=" @@ -97,15 +94,6 @@ schema = 3 [mod."github.com/dgryski/go-rendezvous"] version = "v0.0.0-20200823014737-9f7001d12a5f" hash = "sha256-n/7xo5CQqo4yLaWMSzSN1Muk/oqK6O5dgDOFWapeDUI=" - [mod."github.com/distribution/reference"] - version = "v0.5.0" - hash = "sha256-nTlqurp/J/xOZeR0JcJMmE4GUHMMd5I+EOR7huzYuok=" - [mod."github.com/docker/go-connections"] - version = "v0.4.0" - hash = "sha256-GHNIjOuuNp5lFQ308+nDNwQPGESCVV7bCUxSW5ZxZlc=" - [mod."github.com/docker/go-units"] - version = "v0.5.0" - hash = "sha256-iK/V/jJc+borzqMeqLY+38Qcts2KhywpsTk95++hImE=" [mod."github.com/emicklei/go-restful/v3"] version = "v3.11.0" hash = "sha256-Kp5ndPvj1PhK0nscM1pNNK2Q4ahUuLED/baEgL9pKNo=" @@ -310,15 +298,9 @@ schema = 3 [mod."github.com/mattn/go-isatty"] version = "v0.0.20" hash = "sha256-qhw9hWtU5wnyFyuMbKx+7RB8ckQaFQ8D+8GKPkN3HHQ=" - [mod."github.com/mattn/go-shellwords"] - version = "v1.0.12" - hash = "sha256-H7sLKwLzQmcrkEa4SpkHFSpkrpWmX7foOGiKswBUdhs=" [mod."github.com/microcosm-cc/bluemonday"] version = "v1.0.25" hash = "sha256-/crG5s6cDrJ55nkDBwugLUpY7U+vQuHpCkKm7nnN8Zc=" - [mod."github.com/mitchellh/mapstructure"] - version = "v1.5.0" - hash = "sha256-ztVhGQXs67MF8UadVvG72G3ly0ypQW0IRDdOOkjYwoE=" [mod."github.com/moby/spdystream"] version = "v0.2.0" hash = "sha256-Feme5UoWuBCvnLPKw1ozKkF3SM7PAjjPFQZ3TJhghR0=" @@ -346,9 +328,6 @@ schema = 3 [mod."github.com/onsi/gomega"] version = "v1.31.0" hash = "sha256-a7Bmw1MpIgZNgWenBUEh/R/IpUFVUnDL4zaFznU0ILo=" - [mod."github.com/opencontainers/go-digest"] - version = "v1.0.0" - hash = "sha256-cfVDjHyWItmUGZ2dzQhCHgmOmou8v7N+itDkLZVkqkQ=" [mod."github.com/pelletier/go-toml/v2"] version = "v2.0.9" hash = "sha256-mLpNBZOK72qPpForSmzQkDrqR5xzmpUdM/0XxB2AYFA=" @@ -439,15 +418,6 @@ schema = 3 [mod."github.com/x448/float16"] version = "v0.8.4" hash = "sha256-VKzMTMS9pIB/cwe17xPftCSK9Mf4Y6EuBEJlB4by5mE=" - [mod."github.com/xeipuuv/gojsonpointer"] - version = "v0.0.0-20180127040702-4e3ac2762d5f" - hash = "sha256-OEW9nOR3EeMzvqvqpdAgowpZlbXPLWM0JT+5bwWOxo8=" - [mod."github.com/xeipuuv/gojsonreference"] - version = "v0.0.0-20180127040603-bd5ef7bd5415" - hash = "sha256-ZbXA+ASQrTgBQzasUKC9vznrOGpquYyWr+uwpm46fvU=" - [mod."github.com/xeipuuv/gojsonschema"] - version = "v1.2.0" - hash = "sha256-1ERBEvxj3pvHkMS2mvmvmYRi8jgAaTquo5hwjDLAEdc=" [mod."github.com/yosssi/ace"] version = "v0.0.5" hash = "sha256-0HnNZUypGGoQxFX214/eF7RJ9KxYpb56Q5Rn2tryOLM=" @@ -464,8 +434,8 @@ schema = 3 version = "v0.23.0" hash = "sha256-6hZjb/OazWFBef0C/aH63l49YQnzCh2vpIduzyfSSG8=" [mod."golang.org/x/exp"] - version = "v0.0.0-20230713183714-613f0c0eb8a1" - hash = "sha256-VLE9CCOYpTdyBWaQ1YxXpGOBS74wpIR3JJ+JVzNyEkQ=" + version = "v0.0.0-20220303212507-bbda1eaf7a17" + hash = "sha256-E8mRbh+ptVwyqnxBfYEtJ8pGqjWUvxUxVsz9vXxDIo4=" [mod."golang.org/x/mod"] version = "v0.17.0" hash = "sha256-CLaPeF6uTFuRDv4oHwOQE6MCMvrzkUjWN3NuyywZjKU=" @@ -535,9 +505,6 @@ schema = 3 [mod."gopkg.in/yaml.v3"] version = "v3.0.1" hash = "sha256-FqL9TKYJ0XkNwJFnq9j0VvJ5ZUU1RvH/52h/f5bkYAU=" - [mod."gotest.tools/v3"] - version = "v3.4.0" - hash = "sha256-mohKBcuKT29Illk/Gm7Bu5E8QxhRYr6sEGPn/oux65k=" [mod."istio.io/api"] version = "v1.22.1-0.20240524024004-b6815be0740d" hash = "sha256-crSFKGbjxvJRenCJVCTc4bgVl4//h3jDugNMjmUSQM4=" diff --git a/libs/cli-kontrol-api/api/golang/server/server.gen.go b/libs/cli-kontrol-api/api/golang/server/server.gen.go index ee34986c..f36a19f0 100644 --- a/libs/cli-kontrol-api/api/golang/server/server.gen.go +++ b/libs/cli-kontrol-api/api/golang/server/server.gen.go @@ -417,21 +417,21 @@ func (sh *strictHandler) GetTenantUuidTopology(ctx echo.Context, uuid Uuid) erro // Base64 encoded, gzipped, json marshaled Swagger object var swaggerSpec = []string{ - "H4sIAAAAAAAC/9RXwW7jNhD9FYLtoQUkK21vurVxtw26KAIkOS32wJAjmRuJwyVHzhqB/r0gKdmxxQQJ", - "FgWSkyVyZvjmvRkN/cAl9hYNGPK8fuBWONEDgYtvw6BV+FXgpdOWNBpe85ubizXDhtEGmAOPg5PAC67D", - "nhW04QU3ogdeJ/+CO/g6aAeK1+QGKLiXG+hFCEw7G+w8OW1aPo7jvBmPP+8GT+Cu0WKH7S7ic2jBkYZo", - "AKpND5qgjw8/Omh4zX+oDmlVU8TqT9UCH4v5UOGc2IV3g+oVUf5FlYkyPs7y0xSymAB+3lvj7ReQFNzX", - "sP3Q4f2VBbnMS6G8A1fG0z0cQftWtlhO0ab91RW4rZZwjqbRLS8ONqXuLToKfpMic8giKVXzVtNmuF1J", - "7Ktpr/QW5P6lxSpE8jHFU+Z0L1ooO5SC0EVBvonedsHmVsg7MKoUdScIPPHiVOyC+4S7TNhy3rOFWLqP", - "GVKjwgs2O3EL3bKMP4Zl1qCLhRyUWmVBpvpeuF9vgGkFhnSjwc39kKxZ0H9eejIyCdcCvTRysn5J5JNa", - "3DfodF6uGmNRL4jLNr/RX4cjfDODAVk2zxfx/6S3FQ5MhqXLuB79suTGhQW1O7tnb/IEM/SBplYQ3Isd", - "35fl4ancgvMhQCBW6ccN/QTn8bMXTXJsXzpU7735l+0XlrRpMH7XNcU+Pv94Uf2Dhhx27PfLC17wmcqa", - "/7I6W50FOtCCEVbzmv8WlxK8mHC1AdEFqKdCfkDH0h6TG5B3TKZTeMGnngqUimB9oXjN/wL6O4UKQnmL", - "xie2fz07Cz/BfSozYW2nZXStvvhw2sPzE+sY2dUgJXjfDB2bDwpmY8ErAiMMVQ9hLI6VAtthGmroM5Av", - "0dN19LgZtFon6+JoQn/Kj6qDSRUn8Pg5VSd4+gPV7lX5PjcKj+o4Q0XCzASzDhVD0+2YTCN9cSkY/29Z", - "1rBlTYf3TDqIQZgnQYPPaxMsq2gJLxUoEHGePN6USI8vGhleEmQmmJoIehfSKOjgddKsk8c765+Aea8M", - "+8nBFhyxcDtihIe2+vmti0aPrvBPfZ8Peu0v/N+h1nfk/pxkp39JMszMeywMQ9fHUyIr4/hfAAAA///a", - "yX/Ibg0AAA==", + "H4sIAAAAAAAC/9RXTW/jNhD9KwTbQwvIVtJeCt3auNsGXRQBkpwWe2DIscyNxOEOKWeNQP99QVKyHYs2", + "HCwW2Jwsk/Pm470ZinrmEluLBox3vHrmVpBowQPFf12nVfhV4CRp6zUaXvH7++sFwyXzK2AEDjuSwAuu", + "w54VfsULbkQLvEr4ghN87jSB4pWnDgru5ApaERz7jQ12zpM2Ne/7ftyM4a+aznmgO7TYYL2J+RFaIK8h", + "GoCq04P20MaHnwmWvOI/lbuyysFj+beqgffFGFQQiU34b1C9wsv/qDJe+v0qPwwuiyHBj1trfPgE0gf4", + "AtbvGny6tSCndelW1DBrUAqPFAv9IlrbBA8PQj6CUTNRNcKD87w4JLHgDmitJcwkmqWuzy/tNuGuIizH", + "1Og4yZtLa7QQ07z6DAtRkkn5jXiAZtp378MyWyLFzgvUzrPVp4acwO9WwLQC4/VSA40NnKxZEGxcOurZ", + "C6rBn+s5WZ/j+aB5thM1xMu1T+zCad/kptXoz92L/EYGQ2bZOs/i/yjaCgKTYekmrkdclty4MKF2Y7fs", + "DUgwXRtoqoWHJ7Hh27bcPc3WQC44CMQqvT+BRziP51Q0ybF9Q6iOT+t3GrfcvLyETDJRYBvctAP9X2Y1", + "zkaf1q4v54vdfrHbnunWIkXIcG5Ha16k07zij3+4ucZSWF0Ka125vozZjbQfhJJIsL6c325FOREo2WYj", + "ha0U6XA8to73yp2qFmDaLDG+ZrSPp9TV++vyPzSesGF/3lzzgo+NUvHL+cX8InCMFoywmlf897iUkov8", + "lisQTUj0sE3fIbG0x+QK5COTKQov+HBiBJlEsL5WvOL/gP83uQq1OYvGJQV/u7gIPwE+qCisbbSM0PKT", + "C9GeT79AX2Z220kJzi27ho2Bgllf8NKDEcaXz+Et3ZeJzNhT6DIp36DzdxFx32mVOilys7swfMj3+86k", + "jBeC/mMSFJz/C9XmVfWemqcXU5qhIuXMBLOEiqFpNkymG8bkjtJ/b1kWsGbLBp+YJIhOmPPCdy6vTbAs", + "oyWcK1Ag4iohfiiR9u89GV5SykwwNRD0JqRR0MDrpFkkxBubn5DzVhn2C8EayLNw92Med2P1648umt/7", + "ojh2Pu/02n5/fINa31D7KckOv5AyzIx7LLwMqY1RIit9/zUAAP//3+Y3mv0NAAA=", } // GetSwagger returns the content of the embedded swagger specification file diff --git a/libs/cli-kontrol-api/api/golang/types/types.gen.go b/libs/cli-kontrol-api/api/golang/types/types.gen.go index 21a81a9b..6da9ebcc 100644 --- a/libs/cli-kontrol-api/api/golang/types/types.gen.go +++ b/libs/cli-kontrol-api/api/golang/types/types.gen.go @@ -4,7 +4,8 @@ package types import ( - compose "github.com/compose-spec/compose-go/types" + appv1 "k8s.io/api/apps/v1" + corev1 "k8s.io/api/core/v1" ) // Defines values for NodeType. @@ -23,9 +24,9 @@ type ClusterTopology struct { // DevFlowSpec defines model for DevFlowSpec. type DevFlowSpec struct { - DockerCompose *[]compose.ServiceConfig `json:"docker-compose,omitempty"` - ImageLocator *string `json:"image-locator,omitempty"` - ServiceName *string `json:"service-name,omitempty"` + ImageLocator *string `json:"image-locator,omitempty"` + ServiceConfigs *[]ServiceConfig `json:"service-configs,omitempty"` + ServiceName *string `json:"service-name,omitempty"` } // Edge defines model for Edge. @@ -60,7 +61,13 @@ type NodeType string // ProdFlowSpec defines model for ProdFlowSpec. type ProdFlowSpec struct { - DockerCompose *[]compose.ServiceConfig `json:"docker-compose,omitempty"` + ServiceConfigs *[]ServiceConfig `json:"service-configs,omitempty"` +} + +// ServiceConfig defines model for ServiceConfig. +type ServiceConfig struct { + Deployment appv1.Deployment `json:"deployment"` + Service corev1.Service `json:"service"` } // Uuid defines model for uuid. diff --git a/libs/cli-kontrol-api/api/typescript/client/types.d.ts b/libs/cli-kontrol-api/api/typescript/client/types.d.ts index bf20c5f7..ef5bf822 100644 --- a/libs/cli-kontrol-api/api/typescript/client/types.d.ts +++ b/libs/cli-kontrol-api/api/typescript/client/types.d.ts @@ -110,14 +110,14 @@ export type webhooks = Record; export interface components { schemas: { ProdFlowSpec: { - "docker-compose"?: unknown[]; + "service-configs"?: components["schemas"]["ServiceConfig"][]; }; DevFlowSpec: { /** @example backend-a:latest */ "image-locator"?: string; /** @example backend-service-a */ "service-name"?: string; - "docker-compose"?: unknown[]; + "service-configs"?: components["schemas"]["ServiceConfig"][]; }; Node: { /** @description Unique identifier for the node. */ @@ -144,6 +144,10 @@ export interface components { nodes: components["schemas"]["Node"][]; edges: components["schemas"]["Edge"][]; }; + ServiceConfig: { + service: unknown; + deployment: unknown; + }; }; responses: never; parameters: { diff --git a/libs/cli-kontrol-api/go.mod b/libs/cli-kontrol-api/go.mod index e8d2271f..2e18a108 100644 --- a/libs/cli-kontrol-api/go.mod +++ b/libs/cli-kontrol-api/go.mod @@ -1,44 +1,48 @@ module github.com/kurtosis-tech/kardinal/libs/cli-kontrol-api -go 1.22 +go 1.22.0 + +toolchain go1.22.3 require ( - github.com/compose-spec/compose-go v1.20.2 github.com/getkin/kin-openapi v0.124.0 github.com/labstack/echo/v4 v4.12.0 github.com/oapi-codegen/runtime v1.1.1 + k8s.io/api v0.30.2 ) require ( github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect - github.com/distribution/reference v0.5.0 // indirect - github.com/docker/go-connections v0.4.0 // indirect - github.com/docker/go-units v0.5.0 // indirect + github.com/go-logr/logr v1.4.1 // indirect github.com/go-openapi/jsonpointer v0.20.2 // indirect github.com/go-openapi/swag v0.22.8 // indirect - github.com/google/go-cmp v0.6.0 // indirect + github.com/gogo/protobuf v1.3.2 // indirect + github.com/google/gofuzz v1.2.0 // indirect github.com/google/uuid v1.5.0 // indirect github.com/invopop/yaml v0.2.0 // indirect github.com/josharian/intern v1.0.0 // indirect + github.com/json-iterator/go v1.1.12 // indirect github.com/labstack/gommon v0.4.2 // indirect github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect - github.com/mattn/go-shellwords v1.0.12 // indirect - github.com/mitchellh/mapstructure v1.5.0 // indirect + github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect + github.com/modern-go/reflect2 v1.0.2 // indirect github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 // indirect - github.com/opencontainers/go-digest v1.0.0 // indirect github.com/perimeterx/marshmallow v1.1.5 // indirect - github.com/pkg/errors v0.9.1 // indirect - github.com/sirupsen/logrus v1.9.3 // indirect github.com/stretchr/testify v1.9.0 // indirect github.com/valyala/bytebufferpool v1.0.0 // indirect github.com/valyala/fasttemplate v1.2.2 // indirect golang.org/x/crypto v0.23.0 // indirect - golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1 // indirect golang.org/x/net v0.25.0 // indirect - golang.org/x/sync v0.7.0 // indirect golang.org/x/sys v0.20.0 // indirect golang.org/x/text v0.15.0 // indirect + gopkg.in/inf.v0 v0.9.1 // indirect + gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect + k8s.io/apimachinery v0.30.2 // indirect + k8s.io/klog/v2 v2.120.1 // indirect + k8s.io/utils v0.0.0-20230726121419-3b25d923346b // indirect + sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect + sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect ) diff --git a/libs/cli-kontrol-api/go.sum b/libs/cli-kontrol-api/go.sum index 4cf4998a..931ab920 100644 --- a/libs/cli-kontrol-api/go.sum +++ b/libs/cli-kontrol-api/go.sum @@ -2,34 +2,38 @@ github.com/RaveNoX/go-jsoncommentstrip v1.0.0/go.mod h1:78ihd09MekBnJnxpICcwzCMz github.com/apapsch/go-jsonmerge/v2 v2.0.0 h1:axGnT1gRIfimI7gJifB699GoE/oq+F2MU7Dml6nw9rQ= github.com/apapsch/go-jsonmerge/v2 v2.0.0/go.mod h1:lvDnEdqiQrp0O42VQGgmlKpxL1AP2+08jFMw88y4klk= github.com/bmatcuk/doublestar v1.1.1/go.mod h1:UD6OnuiIn0yFxxA2le/rnRU1G4RaI4UvFv1sNto9p6w= -github.com/compose-spec/compose-go v1.20.2 h1:u/yfZHn4EaHGdidrZycWpxXgFffjYULlTbRfJ51ykjQ= -github.com/compose-spec/compose-go v1.20.2/go.mod h1:+MdqXV4RA7wdFsahh/Kb8U0pAJqkg7mr4PM9tFKU8RM= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/distribution/reference v0.5.0 h1:/FUIFXtfc/x2gpa5/VGfiGLuOIdYa1t65IKK2OFGvA0= -github.com/distribution/reference v0.5.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= -github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ= -github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= -github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= -github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= github.com/getkin/kin-openapi v0.124.0 h1:VSFNMB9C9rTKBnQ/fpyDU8ytMTr4dWI9QovSKj9kz/M= github.com/getkin/kin-openapi v0.124.0/go.mod h1:wb1aSZA/iWmorQP9KTAS/phLj/t17B5jT7+fS8ed9NM= +github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= +github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-openapi/jsonpointer v0.20.2 h1:mQc3nmndL8ZBzStEo3JYF8wzmeWffDH4VbXz58sAx6Q= github.com/go-openapi/jsonpointer v0.20.2/go.mod h1:bHen+N0u1KEO3YlmqOjTT9Adn1RfD91Ar825/PuiRVs= github.com/go-openapi/swag v0.22.8 h1:/9RjDSQ0vbFR+NyjGMkFTsA1IA0fmhKSThmfGZjicbw= github.com/go-openapi/swag v0.22.8/go.mod h1:6QT22icPLEqAM/z/TChgb4WAveCHF92+2gF0CNjHpPI= github.com/go-test/deep v1.0.8 h1:TDsG77qcSprGbC6vTN8OuXp5g+J+b5Pcguhf7Zt61VM= github.com/go-test/deep v1.0.8/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE= +github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= +github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= +github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= +github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/uuid v1.5.0 h1:1p67kYwdtXjb0gL0BPiP1Av9wiZPo5A8z2cWkTZ+eyU= github.com/google/uuid v1.5.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/invopop/yaml v0.2.0 h1:7zky/qH+O0DwAyoobXUqvVBwgBFRxKoQ/3FjcVpjTMY= github.com/invopop/yaml v0.2.0/go.mod h1:2XuRLgs/ouIrW3XNzuNj7J3Nvu/Dig5MXvbCEdiBN3Q= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/juju/gnuflag v0.0.0-20171113085948-2ce1bb71843d/go.mod h1:2PavIy+JPciBPrBUjwbNvtwB6RQlve+hkpll6QSNmOE= +github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= +github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= @@ -45,30 +49,26 @@ github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovk github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= -github.com/mattn/go-shellwords v1.0.12 h1:M2zGm7EW6UQJvDeQxo4T51eKPurbeFbe8WtebGE2xrk= -github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y= -github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= -github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= +github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 h1:RWengNIwukTxcDr9M+97sNutRR1RKhG96O6jWumTTnw= github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826/go.mod h1:TaXosZuwdSHYgviHp1DAtfrULt5eUgsSMsZf+YrPgl8= github.com/oapi-codegen/runtime v1.1.1 h1:EXLHh0DXIJnWhdRPN2w4MXAzFyE4CskzhNLUmtpMYro= github.com/oapi-codegen/runtime v1.1.1/go.mod h1:SK9X900oXmPWilYR5/WKPzt3Kqxn/uS/+lbpREv+eCg= -github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= -github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/perimeterx/marshmallow v1.1.5 h1:a2LALqQ1BlHM8PZblsDdidgv1mWi1DgC2UmX50IvK2s= github.com/perimeterx/marshmallow v1.1.5/go.mod h1:dsXbUu8CRzfYP5a87xpp0xq9S3u0Vchtcl8we9tYaXw= -github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= -github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= -github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= -github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= +github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= +github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spkg/bom v0.0.0-20160624110644-59b7046e48ad/go.mod h1:qLr4V1qq6nMqFKkMo8ZTx3f+BZEkzsRUY10Xsm2mwU0= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= -github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/ugorji/go/codec v1.2.11 h1:BMaWp1Bb6fHwEtbplGBGJ498wD+LKlNSl25MjdZY4dU= @@ -77,27 +77,65 @@ github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6Kllzaw github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= github.com/valyala/fasttemplate v1.2.2 h1:lxLXG0uE3Qnshl9QyaK6XJxMXlQZELvChBOCmQD0Loo= github.com/valyala/fasttemplate v1.2.2/go.mod h1:KHLXt3tVN2HBp8eijSv/kGJopbvo7S+qRAEEKiv+SiQ= +github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.23.0 h1:dIJU/v2J8Mdglj/8rJ6UUOM3Zc9zLZxVZwwxMooUSAI= golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= -golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1 h1:MGwJjxBy0HJshjDNfLsYO8xppfqWlA5ZT9OhtUUhTNw= -golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc= +golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= -golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk= golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= +gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= +gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= +gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gotest.tools/v3 v3.4.0 h1:ZazjZUfuVeZGLAmlKKuyv3IKP5orXcwtOwDQH6YVr6o= -gotest.tools/v3 v3.4.0/go.mod h1:CtbdzLSsqVhDgMtKsx03ird5YTGB3ar27v0u/yKBW5g= +k8s.io/api v0.30.2 h1:+ZhRj+28QT4UOH+BKznu4CBgPWgkXO7XAvMcMl0qKvI= +k8s.io/api v0.30.2/go.mod h1:ULg5g9JvOev2dG0u2hig4Z7tQ2hHIuS+m8MNZ+X6EmI= +k8s.io/apimachinery v0.30.2 h1:fEMcnBj6qkzzPGSVsAZtQThU62SmQ4ZymlXRC5yFSCg= +k8s.io/apimachinery v0.30.2/go.mod h1:iexa2somDaxdnj7bha06bhb43Zpa6eWH8N8dbqVjTUc= +k8s.io/klog/v2 v2.120.1 h1:QXU6cPEOIslTGvZaXvFWiP9VKyeet3sawzTOvdXb4Vw= +k8s.io/klog/v2 v2.120.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= +k8s.io/utils v0.0.0-20230726121419-3b25d923346b h1:sgn3ZU783SCgtaSJjpcVVlRqd6GSnlTLKgpAAttJvpI= +k8s.io/utils v0.0.0-20230726121419-3b25d923346b/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= +sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= +sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= +sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= +sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= +sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= diff --git a/libs/cli-kontrol-api/gomod2nix.toml b/libs/cli-kontrol-api/gomod2nix.toml index b0ace4d7..7ad25b6b 100644 --- a/libs/cli-kontrol-api/gomod2nix.toml +++ b/libs/cli-kontrol-api/gomod2nix.toml @@ -79,9 +79,6 @@ schema = 3 [mod."github.com/chzyer/test"] version = "v0.0.0-20180213035817-a1ea475d72b1" hash = "sha256-U0irpUSqegh7Nzg1ErPuyjESOcIXXOWf7ikKMbES2mY=" - [mod."github.com/compose-spec/compose-go"] - version = "v1.20.2" - hash = "sha256-uICczxxRYLAW4jMHEsNxcOUBoCT5l5AMSrexHJ3xTcA=" [mod."github.com/cpuguy83/go-md2man/v2"] version = "v2.0.3" hash = "sha256-FAMxR5eBO9LQp6ev1b7zaPUS5aoNz1GtsPpoArjiJVw=" @@ -97,15 +94,6 @@ schema = 3 [mod."github.com/dgryski/go-rendezvous"] version = "v0.0.0-20200823014737-9f7001d12a5f" hash = "sha256-n/7xo5CQqo4yLaWMSzSN1Muk/oqK6O5dgDOFWapeDUI=" - [mod."github.com/distribution/reference"] - version = "v0.5.0" - hash = "sha256-nTlqurp/J/xOZeR0JcJMmE4GUHMMd5I+EOR7huzYuok=" - [mod."github.com/docker/go-connections"] - version = "v0.4.0" - hash = "sha256-GHNIjOuuNp5lFQ308+nDNwQPGESCVV7bCUxSW5ZxZlc=" - [mod."github.com/docker/go-units"] - version = "v0.5.0" - hash = "sha256-iK/V/jJc+borzqMeqLY+38Qcts2KhywpsTk95++hImE=" [mod."github.com/emicklei/go-restful/v3"] version = "v3.11.0" hash = "sha256-Kp5ndPvj1PhK0nscM1pNNK2Q4ahUuLED/baEgL9pKNo=" @@ -310,15 +298,9 @@ schema = 3 [mod."github.com/mattn/go-isatty"] version = "v0.0.20" hash = "sha256-qhw9hWtU5wnyFyuMbKx+7RB8ckQaFQ8D+8GKPkN3HHQ=" - [mod."github.com/mattn/go-shellwords"] - version = "v1.0.12" - hash = "sha256-H7sLKwLzQmcrkEa4SpkHFSpkrpWmX7foOGiKswBUdhs=" [mod."github.com/microcosm-cc/bluemonday"] version = "v1.0.25" hash = "sha256-/crG5s6cDrJ55nkDBwugLUpY7U+vQuHpCkKm7nnN8Zc=" - [mod."github.com/mitchellh/mapstructure"] - version = "v1.5.0" - hash = "sha256-ztVhGQXs67MF8UadVvG72G3ly0ypQW0IRDdOOkjYwoE=" [mod."github.com/moby/spdystream"] version = "v0.2.0" hash = "sha256-Feme5UoWuBCvnLPKw1ozKkF3SM7PAjjPFQZ3TJhghR0=" @@ -346,9 +328,6 @@ schema = 3 [mod."github.com/onsi/gomega"] version = "v1.31.0" hash = "sha256-a7Bmw1MpIgZNgWenBUEh/R/IpUFVUnDL4zaFznU0ILo=" - [mod."github.com/opencontainers/go-digest"] - version = "v1.0.0" - hash = "sha256-cfVDjHyWItmUGZ2dzQhCHgmOmou8v7N+itDkLZVkqkQ=" [mod."github.com/pelletier/go-toml/v2"] version = "v2.0.9" hash = "sha256-mLpNBZOK72qPpForSmzQkDrqR5xzmpUdM/0XxB2AYFA=" @@ -439,15 +418,6 @@ schema = 3 [mod."github.com/x448/float16"] version = "v0.8.4" hash = "sha256-VKzMTMS9pIB/cwe17xPftCSK9Mf4Y6EuBEJlB4by5mE=" - [mod."github.com/xeipuuv/gojsonpointer"] - version = "v0.0.0-20180127040702-4e3ac2762d5f" - hash = "sha256-OEW9nOR3EeMzvqvqpdAgowpZlbXPLWM0JT+5bwWOxo8=" - [mod."github.com/xeipuuv/gojsonreference"] - version = "v0.0.0-20180127040603-bd5ef7bd5415" - hash = "sha256-ZbXA+ASQrTgBQzasUKC9vznrOGpquYyWr+uwpm46fvU=" - [mod."github.com/xeipuuv/gojsonschema"] - version = "v1.2.0" - hash = "sha256-1ERBEvxj3pvHkMS2mvmvmYRi8jgAaTquo5hwjDLAEdc=" [mod."github.com/yosssi/ace"] version = "v0.0.5" hash = "sha256-0HnNZUypGGoQxFX214/eF7RJ9KxYpb56Q5Rn2tryOLM=" @@ -464,8 +434,8 @@ schema = 3 version = "v0.23.0" hash = "sha256-6hZjb/OazWFBef0C/aH63l49YQnzCh2vpIduzyfSSG8=" [mod."golang.org/x/exp"] - version = "v0.0.0-20230713183714-613f0c0eb8a1" - hash = "sha256-VLE9CCOYpTdyBWaQ1YxXpGOBS74wpIR3JJ+JVzNyEkQ=" + version = "v0.0.0-20220303212507-bbda1eaf7a17" + hash = "sha256-E8mRbh+ptVwyqnxBfYEtJ8pGqjWUvxUxVsz9vXxDIo4=" [mod."golang.org/x/mod"] version = "v0.17.0" hash = "sha256-CLaPeF6uTFuRDv4oHwOQE6MCMvrzkUjWN3NuyywZjKU=" @@ -535,9 +505,6 @@ schema = 3 [mod."gopkg.in/yaml.v3"] version = "v3.0.1" hash = "sha256-FqL9TKYJ0XkNwJFnq9j0VvJ5ZUU1RvH/52h/f5bkYAU=" - [mod."gotest.tools/v3"] - version = "v3.4.0" - hash = "sha256-mohKBcuKT29Illk/Gm7Bu5E8QxhRYr6sEGPn/oux65k=" [mod."istio.io/api"] version = "v1.22.1-0.20240524024004-b6815be0740d" hash = "sha256-crSFKGbjxvJRenCJVCTc4bgVl4//h3jDugNMjmUSQM4=" diff --git a/libs/cli-kontrol-api/specs/api.yaml b/libs/cli-kontrol-api/specs/api.yaml index 5abfc694..7177eb92 100644 --- a/libs/cli-kontrol-api/specs/api.yaml +++ b/libs/cli-kontrol-api/specs/api.yaml @@ -93,13 +93,10 @@ components: ProdFlowSpec: type: object properties: - docker-compose: + service-configs: type: array items: - x-go-type: compose.ServiceConfig - x-go-type-import: - path: github.com/compose-spec/compose-go/types - name: compose + $ref: "#/components/schemas/ServiceConfig" DevFlowSpec: type: object @@ -110,13 +107,10 @@ components: service-name: type: string example: backend-service-a - docker-compose: + service-configs: type: array items: - x-go-type: compose.ServiceConfig - x-go-type-import: - path: github.com/compose-spec/compose-go/types - name: compose + $ref: "#/components/schemas/ServiceConfig" Node: type: object @@ -168,3 +162,20 @@ components: required: - nodes - edges + + ServiceConfig: + type: object + properties: + service: + x-go-type: corev1.Service + x-go-type-import: + path: k8s.io/api/core/v1 + name: corev1 + deployment: + x-go-type: appv1.Deployment + x-go-type-import: + path: k8s.io/api/apps/v1 + name: appv1 + required: + - service + - deployment diff --git a/libs/manager-kontrol-api/gomod2nix.toml b/libs/manager-kontrol-api/gomod2nix.toml index b0ace4d7..7ad25b6b 100644 --- a/libs/manager-kontrol-api/gomod2nix.toml +++ b/libs/manager-kontrol-api/gomod2nix.toml @@ -79,9 +79,6 @@ schema = 3 [mod."github.com/chzyer/test"] version = "v0.0.0-20180213035817-a1ea475d72b1" hash = "sha256-U0irpUSqegh7Nzg1ErPuyjESOcIXXOWf7ikKMbES2mY=" - [mod."github.com/compose-spec/compose-go"] - version = "v1.20.2" - hash = "sha256-uICczxxRYLAW4jMHEsNxcOUBoCT5l5AMSrexHJ3xTcA=" [mod."github.com/cpuguy83/go-md2man/v2"] version = "v2.0.3" hash = "sha256-FAMxR5eBO9LQp6ev1b7zaPUS5aoNz1GtsPpoArjiJVw=" @@ -97,15 +94,6 @@ schema = 3 [mod."github.com/dgryski/go-rendezvous"] version = "v0.0.0-20200823014737-9f7001d12a5f" hash = "sha256-n/7xo5CQqo4yLaWMSzSN1Muk/oqK6O5dgDOFWapeDUI=" - [mod."github.com/distribution/reference"] - version = "v0.5.0" - hash = "sha256-nTlqurp/J/xOZeR0JcJMmE4GUHMMd5I+EOR7huzYuok=" - [mod."github.com/docker/go-connections"] - version = "v0.4.0" - hash = "sha256-GHNIjOuuNp5lFQ308+nDNwQPGESCVV7bCUxSW5ZxZlc=" - [mod."github.com/docker/go-units"] - version = "v0.5.0" - hash = "sha256-iK/V/jJc+borzqMeqLY+38Qcts2KhywpsTk95++hImE=" [mod."github.com/emicklei/go-restful/v3"] version = "v3.11.0" hash = "sha256-Kp5ndPvj1PhK0nscM1pNNK2Q4ahUuLED/baEgL9pKNo=" @@ -310,15 +298,9 @@ schema = 3 [mod."github.com/mattn/go-isatty"] version = "v0.0.20" hash = "sha256-qhw9hWtU5wnyFyuMbKx+7RB8ckQaFQ8D+8GKPkN3HHQ=" - [mod."github.com/mattn/go-shellwords"] - version = "v1.0.12" - hash = "sha256-H7sLKwLzQmcrkEa4SpkHFSpkrpWmX7foOGiKswBUdhs=" [mod."github.com/microcosm-cc/bluemonday"] version = "v1.0.25" hash = "sha256-/crG5s6cDrJ55nkDBwugLUpY7U+vQuHpCkKm7nnN8Zc=" - [mod."github.com/mitchellh/mapstructure"] - version = "v1.5.0" - hash = "sha256-ztVhGQXs67MF8UadVvG72G3ly0ypQW0IRDdOOkjYwoE=" [mod."github.com/moby/spdystream"] version = "v0.2.0" hash = "sha256-Feme5UoWuBCvnLPKw1ozKkF3SM7PAjjPFQZ3TJhghR0=" @@ -346,9 +328,6 @@ schema = 3 [mod."github.com/onsi/gomega"] version = "v1.31.0" hash = "sha256-a7Bmw1MpIgZNgWenBUEh/R/IpUFVUnDL4zaFznU0ILo=" - [mod."github.com/opencontainers/go-digest"] - version = "v1.0.0" - hash = "sha256-cfVDjHyWItmUGZ2dzQhCHgmOmou8v7N+itDkLZVkqkQ=" [mod."github.com/pelletier/go-toml/v2"] version = "v2.0.9" hash = "sha256-mLpNBZOK72qPpForSmzQkDrqR5xzmpUdM/0XxB2AYFA=" @@ -439,15 +418,6 @@ schema = 3 [mod."github.com/x448/float16"] version = "v0.8.4" hash = "sha256-VKzMTMS9pIB/cwe17xPftCSK9Mf4Y6EuBEJlB4by5mE=" - [mod."github.com/xeipuuv/gojsonpointer"] - version = "v0.0.0-20180127040702-4e3ac2762d5f" - hash = "sha256-OEW9nOR3EeMzvqvqpdAgowpZlbXPLWM0JT+5bwWOxo8=" - [mod."github.com/xeipuuv/gojsonreference"] - version = "v0.0.0-20180127040603-bd5ef7bd5415" - hash = "sha256-ZbXA+ASQrTgBQzasUKC9vznrOGpquYyWr+uwpm46fvU=" - [mod."github.com/xeipuuv/gojsonschema"] - version = "v1.2.0" - hash = "sha256-1ERBEvxj3pvHkMS2mvmvmYRi8jgAaTquo5hwjDLAEdc=" [mod."github.com/yosssi/ace"] version = "v0.0.5" hash = "sha256-0HnNZUypGGoQxFX214/eF7RJ9KxYpb56Q5Rn2tryOLM=" @@ -464,8 +434,8 @@ schema = 3 version = "v0.23.0" hash = "sha256-6hZjb/OazWFBef0C/aH63l49YQnzCh2vpIduzyfSSG8=" [mod."golang.org/x/exp"] - version = "v0.0.0-20230713183714-613f0c0eb8a1" - hash = "sha256-VLE9CCOYpTdyBWaQ1YxXpGOBS74wpIR3JJ+JVzNyEkQ=" + version = "v0.0.0-20220303212507-bbda1eaf7a17" + hash = "sha256-E8mRbh+ptVwyqnxBfYEtJ8pGqjWUvxUxVsz9vXxDIo4=" [mod."golang.org/x/mod"] version = "v0.17.0" hash = "sha256-CLaPeF6uTFuRDv4oHwOQE6MCMvrzkUjWN3NuyywZjKU=" @@ -535,9 +505,6 @@ schema = 3 [mod."gopkg.in/yaml.v3"] version = "v3.0.1" hash = "sha256-FqL9TKYJ0XkNwJFnq9j0VvJ5ZUU1RvH/52h/f5bkYAU=" - [mod."gotest.tools/v3"] - version = "v3.4.0" - hash = "sha256-mohKBcuKT29Illk/Gm7Bu5E8QxhRYr6sEGPn/oux65k=" [mod."istio.io/api"] version = "v1.22.1-0.20240524024004-b6815be0740d" hash = "sha256-crSFKGbjxvJRenCJVCTc4bgVl4//h3jDugNMjmUSQM4=" diff --git a/sidecars/redis-overlay-service/gomod2nix.toml b/sidecars/redis-overlay-service/gomod2nix.toml index b0ace4d7..7ad25b6b 100644 --- a/sidecars/redis-overlay-service/gomod2nix.toml +++ b/sidecars/redis-overlay-service/gomod2nix.toml @@ -79,9 +79,6 @@ schema = 3 [mod."github.com/chzyer/test"] version = "v0.0.0-20180213035817-a1ea475d72b1" hash = "sha256-U0irpUSqegh7Nzg1ErPuyjESOcIXXOWf7ikKMbES2mY=" - [mod."github.com/compose-spec/compose-go"] - version = "v1.20.2" - hash = "sha256-uICczxxRYLAW4jMHEsNxcOUBoCT5l5AMSrexHJ3xTcA=" [mod."github.com/cpuguy83/go-md2man/v2"] version = "v2.0.3" hash = "sha256-FAMxR5eBO9LQp6ev1b7zaPUS5aoNz1GtsPpoArjiJVw=" @@ -97,15 +94,6 @@ schema = 3 [mod."github.com/dgryski/go-rendezvous"] version = "v0.0.0-20200823014737-9f7001d12a5f" hash = "sha256-n/7xo5CQqo4yLaWMSzSN1Muk/oqK6O5dgDOFWapeDUI=" - [mod."github.com/distribution/reference"] - version = "v0.5.0" - hash = "sha256-nTlqurp/J/xOZeR0JcJMmE4GUHMMd5I+EOR7huzYuok=" - [mod."github.com/docker/go-connections"] - version = "v0.4.0" - hash = "sha256-GHNIjOuuNp5lFQ308+nDNwQPGESCVV7bCUxSW5ZxZlc=" - [mod."github.com/docker/go-units"] - version = "v0.5.0" - hash = "sha256-iK/V/jJc+borzqMeqLY+38Qcts2KhywpsTk95++hImE=" [mod."github.com/emicklei/go-restful/v3"] version = "v3.11.0" hash = "sha256-Kp5ndPvj1PhK0nscM1pNNK2Q4ahUuLED/baEgL9pKNo=" @@ -310,15 +298,9 @@ schema = 3 [mod."github.com/mattn/go-isatty"] version = "v0.0.20" hash = "sha256-qhw9hWtU5wnyFyuMbKx+7RB8ckQaFQ8D+8GKPkN3HHQ=" - [mod."github.com/mattn/go-shellwords"] - version = "v1.0.12" - hash = "sha256-H7sLKwLzQmcrkEa4SpkHFSpkrpWmX7foOGiKswBUdhs=" [mod."github.com/microcosm-cc/bluemonday"] version = "v1.0.25" hash = "sha256-/crG5s6cDrJ55nkDBwugLUpY7U+vQuHpCkKm7nnN8Zc=" - [mod."github.com/mitchellh/mapstructure"] - version = "v1.5.0" - hash = "sha256-ztVhGQXs67MF8UadVvG72G3ly0ypQW0IRDdOOkjYwoE=" [mod."github.com/moby/spdystream"] version = "v0.2.0" hash = "sha256-Feme5UoWuBCvnLPKw1ozKkF3SM7PAjjPFQZ3TJhghR0=" @@ -346,9 +328,6 @@ schema = 3 [mod."github.com/onsi/gomega"] version = "v1.31.0" hash = "sha256-a7Bmw1MpIgZNgWenBUEh/R/IpUFVUnDL4zaFznU0ILo=" - [mod."github.com/opencontainers/go-digest"] - version = "v1.0.0" - hash = "sha256-cfVDjHyWItmUGZ2dzQhCHgmOmou8v7N+itDkLZVkqkQ=" [mod."github.com/pelletier/go-toml/v2"] version = "v2.0.9" hash = "sha256-mLpNBZOK72qPpForSmzQkDrqR5xzmpUdM/0XxB2AYFA=" @@ -439,15 +418,6 @@ schema = 3 [mod."github.com/x448/float16"] version = "v0.8.4" hash = "sha256-VKzMTMS9pIB/cwe17xPftCSK9Mf4Y6EuBEJlB4by5mE=" - [mod."github.com/xeipuuv/gojsonpointer"] - version = "v0.0.0-20180127040702-4e3ac2762d5f" - hash = "sha256-OEW9nOR3EeMzvqvqpdAgowpZlbXPLWM0JT+5bwWOxo8=" - [mod."github.com/xeipuuv/gojsonreference"] - version = "v0.0.0-20180127040603-bd5ef7bd5415" - hash = "sha256-ZbXA+ASQrTgBQzasUKC9vznrOGpquYyWr+uwpm46fvU=" - [mod."github.com/xeipuuv/gojsonschema"] - version = "v1.2.0" - hash = "sha256-1ERBEvxj3pvHkMS2mvmvmYRi8jgAaTquo5hwjDLAEdc=" [mod."github.com/yosssi/ace"] version = "v0.0.5" hash = "sha256-0HnNZUypGGoQxFX214/eF7RJ9KxYpb56Q5Rn2tryOLM=" @@ -464,8 +434,8 @@ schema = 3 version = "v0.23.0" hash = "sha256-6hZjb/OazWFBef0C/aH63l49YQnzCh2vpIduzyfSSG8=" [mod."golang.org/x/exp"] - version = "v0.0.0-20230713183714-613f0c0eb8a1" - hash = "sha256-VLE9CCOYpTdyBWaQ1YxXpGOBS74wpIR3JJ+JVzNyEkQ=" + version = "v0.0.0-20220303212507-bbda1eaf7a17" + hash = "sha256-E8mRbh+ptVwyqnxBfYEtJ8pGqjWUvxUxVsz9vXxDIo4=" [mod."golang.org/x/mod"] version = "v0.17.0" hash = "sha256-CLaPeF6uTFuRDv4oHwOQE6MCMvrzkUjWN3NuyywZjKU=" @@ -535,9 +505,6 @@ schema = 3 [mod."gopkg.in/yaml.v3"] version = "v3.0.1" hash = "sha256-FqL9TKYJ0XkNwJFnq9j0VvJ5ZUU1RvH/52h/f5bkYAU=" - [mod."gotest.tools/v3"] - version = "v3.4.0" - hash = "sha256-mohKBcuKT29Illk/Gm7Bu5E8QxhRYr6sEGPn/oux65k=" [mod."istio.io/api"] version = "v1.22.1-0.20240524024004-b6815be0740d" hash = "sha256-crSFKGbjxvJRenCJVCTc4bgVl4//h3jDugNMjmUSQM4="