Skip to content

Commit

Permalink
Get kube client during HTTP request (#1345)
Browse files Browse the repository at this point in the history
  • Loading branch information
yiannistri committed Jan 26, 2022
1 parent 35945c8 commit 8a9c186
Show file tree
Hide file tree
Showing 22 changed files with 196 additions and 231 deletions.
10 changes: 8 additions & 2 deletions cmd/gitops/add/app/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import (

"github.com/weaveworks/weave-gitops/cmd/internal"
"github.com/weaveworks/weave-gitops/pkg/flux"
"github.com/weaveworks/weave-gitops/pkg/kube"
"github.com/weaveworks/weave-gitops/pkg/osys"
"github.com/weaveworks/weave-gitops/pkg/runner"
"github.com/weaveworks/weave-gitops/pkg/services"
Expand Down Expand Up @@ -107,12 +108,17 @@ func runCmd(cmd *cobra.Command, args []string) error {

providerClient := internal.NewGitProviderClient(os.Stdout, os.LookupEnv, auth.NewAuthCLIHandler, log)

appService, err := factory.GetAppService(ctx)
kubeClient, _, err := kube.NewKubeHTTPClient()
if err != nil {
return fmt.Errorf("failed to create kube client: %w", err)
}

appService, err := factory.GetAppService(ctx, kubeClient)
if err != nil {
return fmt.Errorf("failed to create app service: %w", err)
}

gitClient, gitProvider, err := factory.GetGitClients(ctx, providerClient, services.GitConfigParams{
gitClient, gitProvider, err := factory.GetGitClients(ctx, kubeClient, providerClient, services.GitConfigParams{
URL: params.Url,
ConfigRepo: params.ConfigRepo,
Namespace: params.Namespace,
Expand Down
8 changes: 7 additions & 1 deletion cmd/gitops/app/status/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import (

"github.com/weaveworks/weave-gitops/cmd/internal"
"github.com/weaveworks/weave-gitops/pkg/flux"
"github.com/weaveworks/weave-gitops/pkg/kube"
"github.com/weaveworks/weave-gitops/pkg/osys"
"github.com/weaveworks/weave-gitops/pkg/runner"
"github.com/weaveworks/weave-gitops/pkg/services"
Expand All @@ -33,7 +34,12 @@ var Cmd = &cobra.Command{
log := internal.NewCLILogger(os.Stdout)
fluxClient := flux.New(osys.New(), &runner.CLIRunner{})
appFactory := services.NewFactory(fluxClient, log)
appService, err := appFactory.GetAppService(ctx)

kubeClient, _, err := kube.NewKubeHTTPClient()
if err != nil {
return fmt.Errorf("failed to create kube client: %w", err)
}
appService, err := appFactory.GetAppService(ctx, kubeClient)
if err != nil {
return fmt.Errorf("failed to create app service: %w", err)
}
Expand Down
10 changes: 8 additions & 2 deletions cmd/gitops/beta/cmd/add/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import (

"github.com/weaveworks/weave-gitops/cmd/internal"
"github.com/weaveworks/weave-gitops/pkg/flux"
"github.com/weaveworks/weave-gitops/pkg/kube"
"github.com/weaveworks/weave-gitops/pkg/osys"
"github.com/weaveworks/weave-gitops/pkg/runner"
"github.com/weaveworks/weave-gitops/pkg/services"
Expand Down Expand Up @@ -68,12 +69,17 @@ func runCmd(cmd *cobra.Command, args []string) error {

providerClient := internal.NewGitProviderClient(os.Stdout, os.LookupEnv, auth.NewAuthCLIHandler, log)

appService, err := factory.GetAppService(ctx)
kubeClient, _, err := kube.NewKubeHTTPClient()
if err != nil {
return fmt.Errorf("failed to create kube client: %w", err)
}

appService, err := factory.GetAppService(ctx, kubeClient)
if err != nil {
return fmt.Errorf("failed to create app service: %w", err)
}

gitClient, gitProvider, err := factory.GetGitClients(ctx, providerClient, services.GitConfigParams{
gitClient, gitProvider, err := factory.GetGitClients(ctx, kubeClient, providerClient, services.GitConfigParams{
URL: params.Url,
ConfigRepo: params.ConfigRepo,
Namespace: params.Namespace,
Expand Down
2 changes: 1 addition & 1 deletion cmd/gitops/beta/cmd/install.go
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ func installRunCmd(cmd *cobra.Command, args []string) error {
return err
}

gitClient, gitProvider, err := factory.GetGitClients(context.Background(), providerClient, services.GitConfigParams{
gitClient, gitProvider, err := factory.GetGitClients(context.Background(), k, providerClient, services.GitConfigParams{
URL: installParams.ConfigRepo,
Namespace: namespace,
DryRun: installParams.DryRun,
Expand Down
10 changes: 8 additions & 2 deletions cmd/gitops/delete/app/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import (

"github.com/weaveworks/weave-gitops/cmd/internal"
"github.com/weaveworks/weave-gitops/pkg/flux"
"github.com/weaveworks/weave-gitops/pkg/kube"
"github.com/weaveworks/weave-gitops/pkg/osys"
"github.com/weaveworks/weave-gitops/pkg/runner"
"github.com/weaveworks/weave-gitops/pkg/services"
Expand Down Expand Up @@ -58,7 +59,12 @@ func runCmd(cmd *cobra.Command, args []string) error {
log := internal.NewCLILogger(os.Stdout)
factory := services.NewFactory(flux.New(osys.New(), &runner.CLIRunner{}), log)

appService, err := factory.GetAppService(ctx)
kubeClient, _, err := kube.NewKubeHTTPClient()
if err != nil {
return fmt.Errorf("failed to create kube client: %w", err)
}

appService, err := factory.GetAppService(ctx, kubeClient)
if err != nil {
return fmt.Errorf("failed to create app service: %w", err)
}
Expand All @@ -70,7 +76,7 @@ func runCmd(cmd *cobra.Command, args []string) error {

providerClient := internal.NewGitProviderClient(os.Stdout, os.LookupEnv, auth.NewAuthCLIHandler, log)

gitClient, gitProvider, err := factory.GetGitClients(ctx, providerClient, services.NewGitConfigParamsFromApp(appContent, params.DryRun))
gitClient, gitProvider, err := factory.GetGitClients(ctx, kubeClient, providerClient, services.NewGitConfigParamsFromApp(appContent, params.DryRun))
if err != nil {
return fmt.Errorf("failed to get git clients: %w", err)
}
Expand Down
7 changes: 6 additions & 1 deletion cmd/gitops/get/app/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,12 @@ func getApplicationStatus(cmd *cobra.Command, args []string) error {
fluxClient := flux.New(osys.New(), &runner.CLIRunner{})
factory := services.NewFactory(fluxClient, log)

appService, err := factory.GetAppService(ctx)
kubeClient, _, err := kube.NewKubeHTTPClient()
if err != nil {
return fmt.Errorf("failed to create kube client: %w", err)
}

appService, err := factory.GetAppService(ctx, kubeClient)
if err != nil {
return fmt.Errorf("failed to create app service: %w", err)
}
Expand Down
10 changes: 8 additions & 2 deletions cmd/gitops/get/commits/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import (
"github.com/spf13/cobra"
"github.com/weaveworks/weave-gitops/cmd/internal"
"github.com/weaveworks/weave-gitops/pkg/flux"
"github.com/weaveworks/weave-gitops/pkg/kube"
"github.com/weaveworks/weave-gitops/pkg/logger"
"github.com/weaveworks/weave-gitops/pkg/osys"
"github.com/weaveworks/weave-gitops/pkg/runner"
Expand Down Expand Up @@ -47,7 +48,12 @@ func runCmd(cmd *cobra.Command, args []string) error {
fluxClient := flux.New(osys.New(), &runner.CLIRunner{})
factory := services.NewFactory(fluxClient, log)

appService, err := factory.GetAppService(ctx)
kubeClient, _, err := kube.NewKubeHTTPClient()
if err != nil {
return fmt.Errorf("failed to create kube client: %w", err)
}

appService, err := factory.GetAppService(ctx, kubeClient)
if err != nil {
return fmt.Errorf("failed to create app service: %w", err)
}
Expand All @@ -59,7 +65,7 @@ func runCmd(cmd *cobra.Command, args []string) error {

providerClient := internal.NewGitProviderClient(os.Stdout, os.LookupEnv, auth.NewAuthCLIHandler, log)

_, gitProvider, err := factory.GetGitClients(ctx, providerClient, services.NewGitConfigParamsFromApp(appContent, false))
_, gitProvider, err := factory.GetGitClients(ctx, kubeClient, providerClient, services.NewGitConfigParamsFromApp(appContent, false))
if err != nil {
return fmt.Errorf("failed to get git clients: %w", err)
}
Expand Down
2 changes: 1 addition & 1 deletion cmd/gitops/install/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ func installRunCmd(cmd *cobra.Command, args []string) error {
// This is creating the secret, uploads it and applies it to the cluster
// This is going to be broken up to reduce complexity
// and then generates the source yaml of the config repo when using dry-run option
gitClient, gitProvider, err := factory.GetGitClients(context.Background(), providerClient, services.GitConfigParams{
gitClient, gitProvider, err := factory.GetGitClients(context.Background(), kubeClient, providerClient, services.GitConfigParams{
// We need to set URL and ConfigRepo to the same value so a deploy key is created for public config repos
URL: installParams.ConfigRepo,
ConfigRepo: installParams.ConfigRepo,
Expand Down
8 changes: 7 additions & 1 deletion cmd/gitops/resume/app/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import (
"os"

"github.com/weaveworks/weave-gitops/pkg/flux"
"github.com/weaveworks/weave-gitops/pkg/kube"
"github.com/weaveworks/weave-gitops/pkg/osys"
"github.com/weaveworks/weave-gitops/pkg/runner"
"github.com/weaveworks/weave-gitops/pkg/services"
Expand Down Expand Up @@ -40,7 +41,12 @@ func runCmd(cmd *cobra.Command, args []string) error {

appFactory := services.NewFactory(flux.New(osys.New(), &runner.CLIRunner{}), internal.NewCLILogger(os.Stdout))

appService, err := appFactory.GetAppService(ctx)
kubeClient, _, err := kube.NewKubeHTTPClient()
if err != nil {
return fmt.Errorf("failed to create kube client: %w", err)
}

appService, err := appFactory.GetAppService(ctx, kubeClient)
if err != nil {
return fmt.Errorf("failed to create app service: %w", err)
}
Expand Down
8 changes: 7 additions & 1 deletion cmd/gitops/suspend/app/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import (
"os"

"github.com/weaveworks/weave-gitops/pkg/flux"
"github.com/weaveworks/weave-gitops/pkg/kube"
"github.com/weaveworks/weave-gitops/pkg/osys"
"github.com/weaveworks/weave-gitops/pkg/runner"
"github.com/weaveworks/weave-gitops/pkg/services"
Expand Down Expand Up @@ -41,7 +42,12 @@ func runCmd(cmd *cobra.Command, args []string) error {
fluxClient := flux.New(osys.New(), &runner.CLIRunner{})
factory := services.NewFactory(fluxClient, internal.NewCLILogger(os.Stdout))

appService, err := factory.GetAppService(ctx)
kubeClient, _, err := kube.NewKubeHTTPClient()
if err != nil {
return fmt.Errorf("failed to create kube client: %w", err)
}

appService, err := factory.GetAppService(ctx, kubeClient)
if err != nil {
return fmt.Errorf("failed to create app service: %w", err)
}
Expand Down
8 changes: 7 additions & 1 deletion cmd/gitops/upgrade/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import (
wego "github.com/weaveworks/weave-gitops/api/v1alpha1"
"github.com/weaveworks/weave-gitops/cmd/internal"
"github.com/weaveworks/weave-gitops/pkg/flux"
"github.com/weaveworks/weave-gitops/pkg/kube"
"github.com/weaveworks/weave-gitops/pkg/osys"
"github.com/weaveworks/weave-gitops/pkg/runner"
"github.com/weaveworks/weave-gitops/pkg/services"
Expand Down Expand Up @@ -57,6 +58,11 @@ func upgradeCmdRunE() func(*cobra.Command, []string) error {
return fmt.Errorf("couldn't read namespace flag: %v", err)
}

kubeClient, _, err := kube.NewKubeHTTPClient()
if err != nil {
return fmt.Errorf("failed to create kube client: %w", err)
}

// FIXME: maybe a better way to do this?
upgradeCmdFlags.Namespace = namespace

Expand All @@ -66,7 +72,7 @@ func upgradeCmdRunE() func(*cobra.Command, []string) error {

providerClient := internal.NewGitProviderClient(os.Stdout, os.LookupEnv, auth.NewAuthCLIHandler, log)

gitClient, gitProvider, err := factory.GetGitClients(ctx, providerClient, services.GitConfigParams{
gitClient, gitProvider, err := factory.GetGitClients(ctx, kubeClient, providerClient, services.GitConfigParams{
URL: upgradeCmdFlags.ConfigRepo,
Namespace: upgradeCmdFlags.Namespace,
DryRun: upgradeCmdFlags.DryRun,
Expand Down

0 comments on commit 8a9c186

Please sign in to comment.