``` pulumi.All( a.Config.RequireSecret("client-i...
# kubernetes
n
Copy code
pulumi.All(
		a.Config.RequireSecret("client-id"), a.Config.RequireSecret("client-secret"),
	).ApplyT(
		func(args []interface{}) error {
			dex := &OIDCConfig{
				Connectors: []*OIDCConnector{
					{
						Config: map[string]interface{}{
							"issuer":       "<https://accounts.google.com>",
							"clientID":     args[0].(string),
							"clientSecret": args[1].(string),
						},
						Type: "oidc",
						Name: "Google",
						ID:   "google",
					},
				},
			}
			d, err := yaml.Marshal(&dex)
			if err != nil {
				return errors.Wrap(err, "SetupArgoCD: failed creating dex config")
			}

			_, err = helm.NewRelease(
				a.Context, "argocd", &helm.ReleaseArgs{
					Chart: pulumi.String("argo-cd"),
					RepositoryOpts: helm.RepositoryOptsArgs{
						Repo: pulumi.String("<https://argoproj.github.io/argo-helm>"),
					},
					Namespace: pulumi.String(a.Config.Require("namespace")),
					Version:   pulumi.String(a.Config.Require("version")),
					Values: pulumi.Map{
						"dex": pulumi.Map{
							"enabled": pulumi.Bool(true),
						},
						"server": pulumi.Map{
							"config": pulumi.Map{
								"dex.config": pulumi.String(d),
							},
						},
					},
				},
			)
			if err != nil {
				return errors.Wrap(err, "SetupArgoCD: failed installing helm chart")
			}

			return nil
		},
	)