1. Packages
  2. ArgoCD
  3. API Docs
  4. ApplicationSet
Argo CD v1.0.1 published on Friday, Feb 21, 2025 by Three141

argocd.ApplicationSet

Explore with Pulumi AI

argocd logo
Argo CD v1.0.1 published on Friday, Feb 21, 2025 by Three141

    Manages application sets within ArgoCD.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as argocd from "@three14/pulumi-argocd";
    
    // Clusters Generator
    const clustersSelector = new argocd.ApplicationSet("clusters_selector", {
        metadata: {
            name: "clusters-selector",
        },
        spec: {
            generators: [{
                clusters: [{
                    selector: {
                        matchLabels: {
                            "argocd.argoproj.io/secret-type": "cluster",
                        },
                    },
                }],
            }],
            template: {
                metadata: {
                    name: "{{name}}-clusters-selector",
                },
                spec: {
                    sources: [{
                        repoUrl: "https://github.com/argoproj/argocd-example-apps/",
                        targetRevision: "HEAD",
                        path: "guestbook",
                    }],
                    destination: {
                        server: "{{server}}",
                        namespace: "default",
                    },
                },
            },
        },
    });
    // Cluster Decision Resource Generator
    const clusterDecisionResource = new argocd.ApplicationSet("cluster_decision_resource", {
        metadata: {
            name: "cluster-decision-resource",
        },
        spec: {
            generators: [{
                clusterDecisionResources: [{
                    configMapRef: "my-configmap",
                    name: "quak",
                }],
            }],
            template: {
                metadata: {
                    name: "{{name}}-guestbook",
                },
                spec: {
                    sources: [{
                        repoUrl: "https://github.com/argoproj/argocd-example-apps/",
                        targetRevision: "HEAD",
                        path: "guestbook",
                    }],
                    destination: {
                        server: "{{server}}",
                        namespace: "default",
                    },
                },
            },
        },
    });
    // Git Generator - Directories
    const gitDirectories = new argocd.ApplicationSet("git_directories", {
        metadata: {
            name: "git-directories",
        },
        spec: {
            generators: [{
                gits: [{
                    repoUrl: "https://github.com/argoproj/argo-cd.git",
                    revision: "HEAD",
                    directories: [
                        {
                            path: "applicationset/examples/git-generator-directory/cluster-addons/*",
                        },
                        {
                            path: "applicationset/examples/git-generator-directory/excludes/cluster-addons/exclude-helm-guestbook",
                            exclude: true,
                        },
                    ],
                }],
            }],
            template: {
                metadata: {
                    name: "{{path.basename}}-git-directories",
                },
                spec: {
                    sources: [{
                        repoUrl: "https://github.com/argoproj/argo-cd.git",
                        targetRevision: "HEAD",
                        path: "{{path}}",
                    }],
                    destination: {
                        server: "https://kubernetes.default.svc",
                        namespace: "{{path.basename}}",
                    },
                },
            },
        },
    });
    // Git Generator - Files
    const gitFiles = new argocd.ApplicationSet("git_files", {
        metadata: {
            name: "git-files",
        },
        spec: {
            generators: [{
                gits: [{
                    repoUrl: "https://github.com/argoproj/argo-cd.git",
                    revision: "HEAD",
                    files: [{
                        path: "applicationset/examples/git-generator-files-discovery/cluster-config/**/config.json",
                    }],
                }],
            }],
            template: {
                metadata: {
                    name: "{{cluster.name}}-git-files",
                },
                spec: {
                    sources: [{
                        repoUrl: "https://github.com/argoproj/argo-cd.git",
                        targetRevision: "HEAD",
                        path: "applicationset/examples/git-generator-files-discovery/apps/guestbook",
                    }],
                    destination: {
                        server: "{{cluster.address}}",
                        namespace: "guestbook",
                    },
                },
            },
        },
    });
    // List Generator
    const list = new argocd.ApplicationSet("list", {
        metadata: {
            name: "list",
        },
        spec: {
            generators: [{
                lists: [{
                    elements: [
                        {
                            cluster: "engineering-dev",
                            url: "https://kubernetes.default.svc",
                        },
                        {
                            cluster: "engineering-prod",
                            url: "https://kubernetes.default.svc",
                            foo: "bar",
                        },
                    ],
                }],
            }],
            template: {
                metadata: {
                    name: "{{cluster}}-guestbook",
                },
                spec: {
                    project: "my-project",
                    sources: [{
                        repoUrl: "https://github.com/argoproj/argo-cd.git",
                        targetRevision: "HEAD",
                        path: "applicationset/examples/list-generator/guestbook/{{cluster}}",
                    }],
                    destination: {
                        server: "{{url}}",
                        namespace: "guestbook",
                    },
                },
            },
        },
    });
    // Matrix Generator
    const matrix = new argocd.ApplicationSet("matrix", {
        metadata: {
            name: "matrix",
        },
        spec: {
            generators: [{
                matrices: [{
                    generators: [
                        {
                            gits: [{
                                repoUrl: "https://github.com/argoproj/argo-cd.git",
                                revision: "HEAD",
                                directories: [{
                                    path: "applicationset/examples/matrix/cluster-addons/*",
                                }],
                            }],
                        },
                        {
                            clusters: [{
                                selector: {
                                    matchLabels: {
                                        "argocd.argoproj.io/secret-type": "cluster",
                                    },
                                },
                            }],
                        },
                    ],
                }],
            }],
            template: {
                metadata: {
                    name: "{{path.basename}}-{{name}}",
                },
                spec: {
                    project: "default",
                    sources: [{
                        repoUrl: "https://github.com/argoproj/argo-cd.git",
                        targetRevision: "HEAD",
                        path: "{{path}}",
                    }],
                    destination: {
                        server: "{{server}}",
                        namespace: "{{path.basename}}",
                    },
                },
            },
        },
    });
    // Merge Generator
    const merge = new argocd.ApplicationSet("merge", {
        metadata: {
            name: "merge",
        },
        spec: {
            generators: [{
                merges: [{
                    mergeKeys: ["server"],
                    generators: [
                        {
                            clusters: [{
                                values: {
                                    kafka: "true",
                                    redis: "false",
                                },
                            }],
                        },
                        {
                            clusters: [{
                                selector: {
                                    matchLabels: {
                                        "use-kafka": "false",
                                    },
                                },
                                values: {
                                    kafka: "false",
                                },
                            }],
                        },
                        {
                            lists: [{
                                elements: [{
                                    server: "https://2.4.6.8",
                                    "values.redis": "true",
                                }],
                            }],
                        },
                    ],
                }],
            }],
            template: {
                metadata: {
                    name: "{{name}}",
                },
                spec: {
                    project: "default",
                    sources: [{
                        repoUrl: "https://github.com/argoproj/argo-cd.git",
                        path: "app",
                        targetRevision: "HEAD",
                        helm: {
                            parameters: [
                                {
                                    name: "kafka",
                                    value: "{{values.kafka}}",
                                },
                                {
                                    name: "redis",
                                    value: "{{values.redis}}",
                                },
                            ],
                        },
                    }],
                    destination: {
                        server: "{{server}}",
                        namespace: "default",
                    },
                },
            },
        },
    });
    // Pull Request Generator - GitHub
    const prGithub = new argocd.ApplicationSet("pr_github", {
        metadata: {
            name: "pr-github",
        },
        spec: {
            generators: [{
                pullRequests: [{
                    github: {
                        api: "https://git.example.com/",
                        owner: "myorg",
                        repo: "myrepository",
                        appSecretName: "github-app-repo-creds",
                        tokenRef: {
                            secretName: "github-token",
                            key: "token",
                        },
                        labels: ["preview"],
                    },
                }],
            }],
            template: {
                metadata: {
                    name: "myapp-{{branch}}-{{number}}",
                },
                spec: {
                    project: "default",
                    sources: [{
                        repoUrl: "https://github.com/myorg/myrepo.git",
                        path: "kubernetes/",
                        targetRevision: "{{head_sha}}",
                        helm: {
                            parameters: [{
                                name: "image.tag",
                                value: "pull-{{head_sha}}",
                            }],
                        },
                    }],
                    destination: {
                        server: "https://kubernetes.default.svc",
                        namespace: "default",
                    },
                },
            },
        },
    });
    // SCM Provider Generator - GitHub
    const scmGithub = new argocd.ApplicationSet("scm_github", {
        metadata: {
            name: "scm-github",
        },
        spec: {
            generators: [{
                scmProviders: [{
                    github: {
                        appSecretName: "gh-app-repo-creds",
                        organization: "myorg",
                    },
                }],
            }],
            template: {
                metadata: {
                    name: "{{repository}}",
                },
                spec: {
                    project: "default",
                    sources: [{
                        repoUrl: "{{url}}",
                        path: "kubernetes/",
                        targetRevision: "{{branch}}",
                    }],
                    destination: {
                        server: "https://kubernetes.default.svc",
                        namespace: "default",
                    },
                },
            },
        },
    });
    // Progressive Sync - Rolling Update
    const progressiveSync = new argocd.ApplicationSet("progressive_sync", {
        metadata: {
            name: "progressive-sync",
        },
        spec: {
            generators: [{
                lists: [{
                    elements: [
                        {
                            cluster: "engineering-dev",
                            url: "https://1.2.3.4",
                            env: "env-dev",
                        },
                        {
                            cluster: "engineering-qa",
                            url: "https://2.4.6.8",
                            env: "env-qa",
                        },
                        {
                            cluster: "engineering-prod",
                            url: "https://9.8.7.6/",
                            env: "env-prod",
                        },
                    ],
                }],
            }],
            strategy: {
                type: "RollingSync",
                rollingSyncs: [{
                    steps: [
                        {
                            matchExpressions: [{
                                key: "envLabel",
                                operator: "In",
                                values: ["env-dev"],
                            }],
                        },
                        {
                            matchExpressions: [{
                                key: "envLabel",
                                operator: "In",
                                values: ["env-qa"],
                            }],
                            maxUpdate: "0",
                        },
                        {
                            matchExpressions: [{
                                key: "envLabel",
                                operator: "In",
                                values: ["env-prod"],
                            }],
                            maxUpdate: "10%",
                        },
                    ],
                }],
            },
            goTemplate: true,
            template: {
                metadata: {
                    name: "{{.cluster}}-guestbook",
                    labels: {
                        envLabel: "{{.env}}",
                    },
                },
                spec: {
                    project: "default",
                    sources: [{
                        repoUrl: "https://github.com/infra-team/cluster-deployments.git",
                        path: "guestbook/{{.cluster}}",
                        targetRevision: "HEAD",
                    }],
                    destination: {
                        server: "{{.url}}",
                        namespace: "guestbook",
                    },
                },
            },
        },
    });
    
    import pulumi
    import pulumi_argocd as argocd
    
    # Clusters Generator
    clusters_selector = argocd.ApplicationSet("clusters_selector",
        metadata={
            "name": "clusters-selector",
        },
        spec={
            "generators": [{
                "clusters": [{
                    "selector": {
                        "match_labels": {
                            "argocd.argoproj.io/secret-type": "cluster",
                        },
                    },
                }],
            }],
            "template": {
                "metadata": {
                    "name": "{{name}}-clusters-selector",
                },
                "spec": {
                    "sources": [{
                        "repo_url": "https://github.com/argoproj/argocd-example-apps/",
                        "target_revision": "HEAD",
                        "path": "guestbook",
                    }],
                    "destination": {
                        "server": "{{server}}",
                        "namespace": "default",
                    },
                },
            },
        })
    # Cluster Decision Resource Generator
    cluster_decision_resource = argocd.ApplicationSet("cluster_decision_resource",
        metadata={
            "name": "cluster-decision-resource",
        },
        spec={
            "generators": [{
                "cluster_decision_resources": [{
                    "config_map_ref": "my-configmap",
                    "name": "quak",
                }],
            }],
            "template": {
                "metadata": {
                    "name": "{{name}}-guestbook",
                },
                "spec": {
                    "sources": [{
                        "repo_url": "https://github.com/argoproj/argocd-example-apps/",
                        "target_revision": "HEAD",
                        "path": "guestbook",
                    }],
                    "destination": {
                        "server": "{{server}}",
                        "namespace": "default",
                    },
                },
            },
        })
    # Git Generator - Directories
    git_directories = argocd.ApplicationSet("git_directories",
        metadata={
            "name": "git-directories",
        },
        spec={
            "generators": [{
                "gits": [{
                    "repo_url": "https://github.com/argoproj/argo-cd.git",
                    "revision": "HEAD",
                    "directories": [
                        {
                            "path": "applicationset/examples/git-generator-directory/cluster-addons/*",
                        },
                        {
                            "path": "applicationset/examples/git-generator-directory/excludes/cluster-addons/exclude-helm-guestbook",
                            "exclude": True,
                        },
                    ],
                }],
            }],
            "template": {
                "metadata": {
                    "name": "{{path.basename}}-git-directories",
                },
                "spec": {
                    "sources": [{
                        "repo_url": "https://github.com/argoproj/argo-cd.git",
                        "target_revision": "HEAD",
                        "path": "{{path}}",
                    }],
                    "destination": {
                        "server": "https://kubernetes.default.svc",
                        "namespace": "{{path.basename}}",
                    },
                },
            },
        })
    # Git Generator - Files
    git_files = argocd.ApplicationSet("git_files",
        metadata={
            "name": "git-files",
        },
        spec={
            "generators": [{
                "gits": [{
                    "repo_url": "https://github.com/argoproj/argo-cd.git",
                    "revision": "HEAD",
                    "files": [{
                        "path": "applicationset/examples/git-generator-files-discovery/cluster-config/**/config.json",
                    }],
                }],
            }],
            "template": {
                "metadata": {
                    "name": "{{cluster.name}}-git-files",
                },
                "spec": {
                    "sources": [{
                        "repo_url": "https://github.com/argoproj/argo-cd.git",
                        "target_revision": "HEAD",
                        "path": "applicationset/examples/git-generator-files-discovery/apps/guestbook",
                    }],
                    "destination": {
                        "server": "{{cluster.address}}",
                        "namespace": "guestbook",
                    },
                },
            },
        })
    # List Generator
    list = argocd.ApplicationSet("list",
        metadata={
            "name": "list",
        },
        spec={
            "generators": [{
                "lists": [{
                    "elements": [
                        {
                            "cluster": "engineering-dev",
                            "url": "https://kubernetes.default.svc",
                        },
                        {
                            "cluster": "engineering-prod",
                            "url": "https://kubernetes.default.svc",
                            "foo": "bar",
                        },
                    ],
                }],
            }],
            "template": {
                "metadata": {
                    "name": "{{cluster}}-guestbook",
                },
                "spec": {
                    "project": "my-project",
                    "sources": [{
                        "repo_url": "https://github.com/argoproj/argo-cd.git",
                        "target_revision": "HEAD",
                        "path": "applicationset/examples/list-generator/guestbook/{{cluster}}",
                    }],
                    "destination": {
                        "server": "{{url}}",
                        "namespace": "guestbook",
                    },
                },
            },
        })
    # Matrix Generator
    matrix = argocd.ApplicationSet("matrix",
        metadata={
            "name": "matrix",
        },
        spec={
            "generators": [{
                "matrices": [{
                    "generators": [
                        {
                            "gits": [{
                                "repo_url": "https://github.com/argoproj/argo-cd.git",
                                "revision": "HEAD",
                                "directories": [{
                                    "path": "applicationset/examples/matrix/cluster-addons/*",
                                }],
                            }],
                        },
                        {
                            "clusters": [{
                                "selector": {
                                    "match_labels": {
                                        "argocd.argoproj.io/secret-type": "cluster",
                                    },
                                },
                            }],
                        },
                    ],
                }],
            }],
            "template": {
                "metadata": {
                    "name": "{{path.basename}}-{{name}}",
                },
                "spec": {
                    "project": "default",
                    "sources": [{
                        "repo_url": "https://github.com/argoproj/argo-cd.git",
                        "target_revision": "HEAD",
                        "path": "{{path}}",
                    }],
                    "destination": {
                        "server": "{{server}}",
                        "namespace": "{{path.basename}}",
                    },
                },
            },
        })
    # Merge Generator
    merge = argocd.ApplicationSet("merge",
        metadata={
            "name": "merge",
        },
        spec={
            "generators": [{
                "merges": [{
                    "merge_keys": ["server"],
                    "generators": [
                        {
                            "clusters": [{
                                "values": {
                                    "kafka": "true",
                                    "redis": "false",
                                },
                            }],
                        },
                        {
                            "clusters": [{
                                "selector": {
                                    "match_labels": {
                                        "use-kafka": "false",
                                    },
                                },
                                "values": {
                                    "kafka": "false",
                                },
                            }],
                        },
                        {
                            "lists": [{
                                "elements": [{
                                    "server": "https://2.4.6.8",
                                    "values.redis": "true",
                                }],
                            }],
                        },
                    ],
                }],
            }],
            "template": {
                "metadata": {
                    "name": "{{name}}",
                },
                "spec": {
                    "project": "default",
                    "sources": [{
                        "repo_url": "https://github.com/argoproj/argo-cd.git",
                        "path": "app",
                        "target_revision": "HEAD",
                        "helm": {
                            "parameters": [
                                {
                                    "name": "kafka",
                                    "value": "{{values.kafka}}",
                                },
                                {
                                    "name": "redis",
                                    "value": "{{values.redis}}",
                                },
                            ],
                        },
                    }],
                    "destination": {
                        "server": "{{server}}",
                        "namespace": "default",
                    },
                },
            },
        })
    # Pull Request Generator - GitHub
    pr_github = argocd.ApplicationSet("pr_github",
        metadata={
            "name": "pr-github",
        },
        spec={
            "generators": [{
                "pull_requests": [{
                    "github": {
                        "api": "https://git.example.com/",
                        "owner": "myorg",
                        "repo": "myrepository",
                        "app_secret_name": "github-app-repo-creds",
                        "token_ref": {
                            "secret_name": "github-token",
                            "key": "token",
                        },
                        "labels": ["preview"],
                    },
                }],
            }],
            "template": {
                "metadata": {
                    "name": "myapp-{{branch}}-{{number}}",
                },
                "spec": {
                    "project": "default",
                    "sources": [{
                        "repo_url": "https://github.com/myorg/myrepo.git",
                        "path": "kubernetes/",
                        "target_revision": "{{head_sha}}",
                        "helm": {
                            "parameters": [{
                                "name": "image.tag",
                                "value": "pull-{{head_sha}}",
                            }],
                        },
                    }],
                    "destination": {
                        "server": "https://kubernetes.default.svc",
                        "namespace": "default",
                    },
                },
            },
        })
    # SCM Provider Generator - GitHub
    scm_github = argocd.ApplicationSet("scm_github",
        metadata={
            "name": "scm-github",
        },
        spec={
            "generators": [{
                "scm_providers": [{
                    "github": {
                        "app_secret_name": "gh-app-repo-creds",
                        "organization": "myorg",
                    },
                }],
            }],
            "template": {
                "metadata": {
                    "name": "{{repository}}",
                },
                "spec": {
                    "project": "default",
                    "sources": [{
                        "repo_url": "{{url}}",
                        "path": "kubernetes/",
                        "target_revision": "{{branch}}",
                    }],
                    "destination": {
                        "server": "https://kubernetes.default.svc",
                        "namespace": "default",
                    },
                },
            },
        })
    # Progressive Sync - Rolling Update
    progressive_sync = argocd.ApplicationSet("progressive_sync",
        metadata={
            "name": "progressive-sync",
        },
        spec={
            "generators": [{
                "lists": [{
                    "elements": [
                        {
                            "cluster": "engineering-dev",
                            "url": "https://1.2.3.4",
                            "env": "env-dev",
                        },
                        {
                            "cluster": "engineering-qa",
                            "url": "https://2.4.6.8",
                            "env": "env-qa",
                        },
                        {
                            "cluster": "engineering-prod",
                            "url": "https://9.8.7.6/",
                            "env": "env-prod",
                        },
                    ],
                }],
            }],
            "strategy": {
                "type": "RollingSync",
                "rolling_syncs": [{
                    "steps": [
                        {
                            "match_expressions": [{
                                "key": "envLabel",
                                "operator": "In",
                                "values": ["env-dev"],
                            }],
                        },
                        {
                            "match_expressions": [{
                                "key": "envLabel",
                                "operator": "In",
                                "values": ["env-qa"],
                            }],
                            "max_update": "0",
                        },
                        {
                            "match_expressions": [{
                                "key": "envLabel",
                                "operator": "In",
                                "values": ["env-prod"],
                            }],
                            "max_update": "10%",
                        },
                    ],
                }],
            },
            "go_template": True,
            "template": {
                "metadata": {
                    "name": "{{.cluster}}-guestbook",
                    "labels": {
                        "envLabel": "{{.env}}",
                    },
                },
                "spec": {
                    "project": "default",
                    "sources": [{
                        "repo_url": "https://github.com/infra-team/cluster-deployments.git",
                        "path": "guestbook/{{.cluster}}",
                        "target_revision": "HEAD",
                    }],
                    "destination": {
                        "server": "{{.url}}",
                        "namespace": "guestbook",
                    },
                },
            },
        })
    
    package main
    
    import (
    	"github.com/Three141/pulumi-argocd/sdk/go/argocd"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Clusters Generator
    		_, err := argocd.NewApplicationSet(ctx, "clusters_selector", &argocd.ApplicationSetArgs{
    			Metadata: &argocd.ApplicationSetMetadataArgs{
    				Name: pulumi.String("clusters-selector"),
    			},
    			Spec: &argocd.ApplicationSetSpecArgs{
    				Generators: argocd.ApplicationSetSpecGeneratorArray{
    					&argocd.ApplicationSetSpecGeneratorArgs{
    						Clusters: argocd.ApplicationSetSpecGeneratorClusterArray{
    							&argocd.ApplicationSetSpecGeneratorClusterArgs{
    								Selector: &argocd.ApplicationSetSpecGeneratorClusterSelectorArgs{
    									MatchLabels: pulumi.StringMap{
    										"argocd.argoproj.io/secret-type": pulumi.String("cluster"),
    									},
    								},
    							},
    						},
    					},
    				},
    				Template: &argocd.ApplicationSetSpecTemplateArgs{
    					Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    						Name: pulumi.String("{{name}}-clusters-selector"),
    					},
    					Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    						Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    							&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    								RepoUrl:        pulumi.String("https://github.com/argoproj/argocd-example-apps/"),
    								TargetRevision: pulumi.String("HEAD"),
    								Path:           pulumi.String("guestbook"),
    							},
    						},
    						Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    							Server:    pulumi.String("{{server}}"),
    							Namespace: pulumi.String("default"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Cluster Decision Resource Generator
    		_, err = argocd.NewApplicationSet(ctx, "cluster_decision_resource", &argocd.ApplicationSetArgs{
    			Metadata: &argocd.ApplicationSetMetadataArgs{
    				Name: pulumi.String("cluster-decision-resource"),
    			},
    			Spec: &argocd.ApplicationSetSpecArgs{
    				Generators: argocd.ApplicationSetSpecGeneratorArray{
    					&argocd.ApplicationSetSpecGeneratorArgs{
    						ClusterDecisionResources: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceArray{
    							&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceArgs{
    								ConfigMapRef: pulumi.String("my-configmap"),
    								Name:         pulumi.String("quak"),
    							},
    						},
    					},
    				},
    				Template: &argocd.ApplicationSetSpecTemplateArgs{
    					Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    						Name: pulumi.String("{{name}}-guestbook"),
    					},
    					Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    						Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    							&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    								RepoUrl:        pulumi.String("https://github.com/argoproj/argocd-example-apps/"),
    								TargetRevision: pulumi.String("HEAD"),
    								Path:           pulumi.String("guestbook"),
    							},
    						},
    						Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    							Server:    pulumi.String("{{server}}"),
    							Namespace: pulumi.String("default"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Git Generator - Directories
    		_, err = argocd.NewApplicationSet(ctx, "git_directories", &argocd.ApplicationSetArgs{
    			Metadata: &argocd.ApplicationSetMetadataArgs{
    				Name: pulumi.String("git-directories"),
    			},
    			Spec: &argocd.ApplicationSetSpecArgs{
    				Generators: argocd.ApplicationSetSpecGeneratorArray{
    					&argocd.ApplicationSetSpecGeneratorArgs{
    						Gits: argocd.ApplicationSetSpecGeneratorGitArray{
    							&argocd.ApplicationSetSpecGeneratorGitArgs{
    								RepoUrl:  pulumi.String("https://github.com/argoproj/argo-cd.git"),
    								Revision: pulumi.String("HEAD"),
    								Directories: argocd.ApplicationSetSpecGeneratorGitDirectoryArray{
    									&argocd.ApplicationSetSpecGeneratorGitDirectoryArgs{
    										Path: pulumi.String("applicationset/examples/git-generator-directory/cluster-addons/*"),
    									},
    									&argocd.ApplicationSetSpecGeneratorGitDirectoryArgs{
    										Path:    pulumi.String("applicationset/examples/git-generator-directory/excludes/cluster-addons/exclude-helm-guestbook"),
    										Exclude: pulumi.Bool(true),
    									},
    								},
    							},
    						},
    					},
    				},
    				Template: &argocd.ApplicationSetSpecTemplateArgs{
    					Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    						Name: pulumi.String("{{path.basename}}-git-directories"),
    					},
    					Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    						Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    							&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    								RepoUrl:        pulumi.String("https://github.com/argoproj/argo-cd.git"),
    								TargetRevision: pulumi.String("HEAD"),
    								Path:           pulumi.String("{{path}}"),
    							},
    						},
    						Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    							Server:    pulumi.String("https://kubernetes.default.svc"),
    							Namespace: pulumi.String("{{path.basename}}"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Git Generator - Files
    		_, err = argocd.NewApplicationSet(ctx, "git_files", &argocd.ApplicationSetArgs{
    			Metadata: &argocd.ApplicationSetMetadataArgs{
    				Name: pulumi.String("git-files"),
    			},
    			Spec: &argocd.ApplicationSetSpecArgs{
    				Generators: argocd.ApplicationSetSpecGeneratorArray{
    					&argocd.ApplicationSetSpecGeneratorArgs{
    						Gits: argocd.ApplicationSetSpecGeneratorGitArray{
    							&argocd.ApplicationSetSpecGeneratorGitArgs{
    								RepoUrl:  pulumi.String("https://github.com/argoproj/argo-cd.git"),
    								Revision: pulumi.String("HEAD"),
    								Files: argocd.ApplicationSetSpecGeneratorGitFileArray{
    									&argocd.ApplicationSetSpecGeneratorGitFileArgs{
    										Path: pulumi.String("applicationset/examples/git-generator-files-discovery/cluster-config/**/config.json"),
    									},
    								},
    							},
    						},
    					},
    				},
    				Template: &argocd.ApplicationSetSpecTemplateArgs{
    					Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    						Name: pulumi.String("{{cluster.name}}-git-files"),
    					},
    					Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    						Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    							&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    								RepoUrl:        pulumi.String("https://github.com/argoproj/argo-cd.git"),
    								TargetRevision: pulumi.String("HEAD"),
    								Path:           pulumi.String("applicationset/examples/git-generator-files-discovery/apps/guestbook"),
    							},
    						},
    						Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    							Server:    pulumi.String("{{cluster.address}}"),
    							Namespace: pulumi.String("guestbook"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// List Generator
    		_, err = argocd.NewApplicationSet(ctx, "list", &argocd.ApplicationSetArgs{
    			Metadata: &argocd.ApplicationSetMetadataArgs{
    				Name: pulumi.String("list"),
    			},
    			Spec: &argocd.ApplicationSetSpecArgs{
    				Generators: argocd.ApplicationSetSpecGeneratorArray{
    					&argocd.ApplicationSetSpecGeneratorArgs{
    						Lists: argocd.ApplicationSetSpecGeneratorListArray{
    							&argocd.ApplicationSetSpecGeneratorListArgs{
    								Elements: pulumi.StringMapArray{
    									pulumi.StringMap{
    										"cluster": pulumi.String("engineering-dev"),
    										"url":     pulumi.String("https://kubernetes.default.svc"),
    									},
    									pulumi.StringMap{
    										"cluster": pulumi.String("engineering-prod"),
    										"url":     pulumi.String("https://kubernetes.default.svc"),
    										"foo":     pulumi.String("bar"),
    									},
    								},
    							},
    						},
    					},
    				},
    				Template: &argocd.ApplicationSetSpecTemplateArgs{
    					Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    						Name: pulumi.String("{{cluster}}-guestbook"),
    					},
    					Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    						Project: pulumi.String("my-project"),
    						Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    							&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    								RepoUrl:        pulumi.String("https://github.com/argoproj/argo-cd.git"),
    								TargetRevision: pulumi.String("HEAD"),
    								Path:           pulumi.String("applicationset/examples/list-generator/guestbook/{{cluster}}"),
    							},
    						},
    						Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    							Server:    pulumi.String("{{url}}"),
    							Namespace: pulumi.String("guestbook"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Matrix Generator
    		_, err = argocd.NewApplicationSet(ctx, "matrix", &argocd.ApplicationSetArgs{
    			Metadata: &argocd.ApplicationSetMetadataArgs{
    				Name: pulumi.String("matrix"),
    			},
    			Spec: &argocd.ApplicationSetSpecArgs{
    				Generators: argocd.ApplicationSetSpecGeneratorArray{
    					&argocd.ApplicationSetSpecGeneratorArgs{
    						Matrices: argocd.ApplicationSetSpecGeneratorMatrixArray{
    							&argocd.ApplicationSetSpecGeneratorMatrixArgs{
    								Generators: argocd.ApplicationSetSpecGeneratorMatrixGeneratorArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixGeneratorArgs{
    										Gits: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitArray{
    											&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitArgs{
    												RepoUrl:  pulumi.String("https://github.com/argoproj/argo-cd.git"),
    												Revision: pulumi.String("HEAD"),
    												Directories: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitDirectoryArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitDirectoryArgs{
    														Path: pulumi.String("applicationset/examples/matrix/cluster-addons/*"),
    													},
    												},
    											},
    										},
    									},
    									&argocd.ApplicationSetSpecGeneratorMatrixGeneratorArgs{
    										Clusters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterArray{
    											&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterArgs{
    												Selector: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterSelectorArgs{
    													MatchLabels: pulumi.StringMap{
    														"argocd.argoproj.io/secret-type": pulumi.String("cluster"),
    													},
    												},
    											},
    										},
    									},
    								},
    							},
    						},
    					},
    				},
    				Template: &argocd.ApplicationSetSpecTemplateArgs{
    					Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    						Name: pulumi.String("{{path.basename}}-{{name}}"),
    					},
    					Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    						Project: pulumi.String("default"),
    						Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    							&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    								RepoUrl:        pulumi.String("https://github.com/argoproj/argo-cd.git"),
    								TargetRevision: pulumi.String("HEAD"),
    								Path:           pulumi.String("{{path}}"),
    							},
    						},
    						Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    							Server:    pulumi.String("{{server}}"),
    							Namespace: pulumi.String("{{path.basename}}"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Merge Generator
    		_, err = argocd.NewApplicationSet(ctx, "merge", &argocd.ApplicationSetArgs{
    			Metadata: &argocd.ApplicationSetMetadataArgs{
    				Name: pulumi.String("merge"),
    			},
    			Spec: &argocd.ApplicationSetSpecArgs{
    				Generators: argocd.ApplicationSetSpecGeneratorArray{
    					&argocd.ApplicationSetSpecGeneratorArgs{
    						Merges: argocd.ApplicationSetSpecGeneratorMergeArray{
    							&argocd.ApplicationSetSpecGeneratorMergeArgs{
    								MergeKeys: pulumi.StringArray{
    									pulumi.String("server"),
    								},
    								Generators: argocd.ApplicationSetSpecGeneratorMergeGeneratorArray{
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorArgs{
    										Clusters: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterArray{
    											&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterArgs{
    												Values: pulumi.StringMap{
    													"kafka": pulumi.String("true"),
    													"redis": pulumi.String("false"),
    												},
    											},
    										},
    									},
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorArgs{
    										Clusters: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterArray{
    											&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterArgs{
    												Selector: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterSelectorArgs{
    													MatchLabels: pulumi.StringMap{
    														"use-kafka": pulumi.String("false"),
    													},
    												},
    												Values: pulumi.StringMap{
    													"kafka": pulumi.String("false"),
    												},
    											},
    										},
    									},
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorArgs{
    										Lists: argocd.ApplicationSetSpecGeneratorMergeGeneratorListArray{
    											&argocd.ApplicationSetSpecGeneratorMergeGeneratorListArgs{
    												Elements: pulumi.StringMapArray{
    													pulumi.StringMap{
    														"server":       pulumi.String("https://2.4.6.8"),
    														"values.redis": pulumi.String("true"),
    													},
    												},
    											},
    										},
    									},
    								},
    							},
    						},
    					},
    				},
    				Template: &argocd.ApplicationSetSpecTemplateArgs{
    					Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    						Name: pulumi.String("{{name}}"),
    					},
    					Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    						Project: pulumi.String("default"),
    						Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    							&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    								RepoUrl:        pulumi.String("https://github.com/argoproj/argo-cd.git"),
    								Path:           pulumi.String("app"),
    								TargetRevision: pulumi.String("HEAD"),
    								Helm: &argocd.ApplicationSetSpecTemplateSpecSourceHelmArgs{
    									Parameters: argocd.ApplicationSetSpecTemplateSpecSourceHelmParameterArray{
    										&argocd.ApplicationSetSpecTemplateSpecSourceHelmParameterArgs{
    											Name:  pulumi.String("kafka"),
    											Value: pulumi.String("{{values.kafka}}"),
    										},
    										&argocd.ApplicationSetSpecTemplateSpecSourceHelmParameterArgs{
    											Name:  pulumi.String("redis"),
    											Value: pulumi.String("{{values.redis}}"),
    										},
    									},
    								},
    							},
    						},
    						Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    							Server:    pulumi.String("{{server}}"),
    							Namespace: pulumi.String("default"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Pull Request Generator - GitHub
    		_, err = argocd.NewApplicationSet(ctx, "pr_github", &argocd.ApplicationSetArgs{
    			Metadata: &argocd.ApplicationSetMetadataArgs{
    				Name: pulumi.String("pr-github"),
    			},
    			Spec: &argocd.ApplicationSetSpecArgs{
    				Generators: argocd.ApplicationSetSpecGeneratorArray{
    					&argocd.ApplicationSetSpecGeneratorArgs{
    						PullRequests: argocd.ApplicationSetSpecGeneratorPullRequestArray{
    							&argocd.ApplicationSetSpecGeneratorPullRequestArgs{
    								Github: &argocd.ApplicationSetSpecGeneratorPullRequestGithubArgs{
    									Api:           pulumi.String("https://git.example.com/"),
    									Owner:         pulumi.String("myorg"),
    									Repo:          pulumi.String("myrepository"),
    									AppSecretName: pulumi.String("github-app-repo-creds"),
    									TokenRef: &argocd.ApplicationSetSpecGeneratorPullRequestGithubTokenRefArgs{
    										SecretName: pulumi.String("github-token"),
    										Key:        pulumi.String("token"),
    									},
    									Labels: pulumi.StringArray{
    										pulumi.String("preview"),
    									},
    								},
    							},
    						},
    					},
    				},
    				Template: &argocd.ApplicationSetSpecTemplateArgs{
    					Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    						Name: pulumi.String("myapp-{{branch}}-{{number}}"),
    					},
    					Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    						Project: pulumi.String("default"),
    						Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    							&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    								RepoUrl:        pulumi.String("https://github.com/myorg/myrepo.git"),
    								Path:           pulumi.String("kubernetes/"),
    								TargetRevision: pulumi.String("{{head_sha}}"),
    								Helm: &argocd.ApplicationSetSpecTemplateSpecSourceHelmArgs{
    									Parameters: argocd.ApplicationSetSpecTemplateSpecSourceHelmParameterArray{
    										&argocd.ApplicationSetSpecTemplateSpecSourceHelmParameterArgs{
    											Name:  pulumi.String("image.tag"),
    											Value: pulumi.String("pull-{{head_sha}}"),
    										},
    									},
    								},
    							},
    						},
    						Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    							Server:    pulumi.String("https://kubernetes.default.svc"),
    							Namespace: pulumi.String("default"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// SCM Provider Generator - GitHub
    		_, err = argocd.NewApplicationSet(ctx, "scm_github", &argocd.ApplicationSetArgs{
    			Metadata: &argocd.ApplicationSetMetadataArgs{
    				Name: pulumi.String("scm-github"),
    			},
    			Spec: &argocd.ApplicationSetSpecArgs{
    				Generators: argocd.ApplicationSetSpecGeneratorArray{
    					&argocd.ApplicationSetSpecGeneratorArgs{
    						ScmProviders: argocd.ApplicationSetSpecGeneratorScmProviderArray{
    							&argocd.ApplicationSetSpecGeneratorScmProviderArgs{
    								Github: &argocd.ApplicationSetSpecGeneratorScmProviderGithubArgs{
    									AppSecretName: pulumi.String("gh-app-repo-creds"),
    									Organization:  pulumi.String("myorg"),
    								},
    							},
    						},
    					},
    				},
    				Template: &argocd.ApplicationSetSpecTemplateArgs{
    					Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    						Name: pulumi.String("{{repository}}"),
    					},
    					Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    						Project: pulumi.String("default"),
    						Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    							&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    								RepoUrl:        pulumi.String("{{url}}"),
    								Path:           pulumi.String("kubernetes/"),
    								TargetRevision: pulumi.String("{{branch}}"),
    							},
    						},
    						Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    							Server:    pulumi.String("https://kubernetes.default.svc"),
    							Namespace: pulumi.String("default"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Progressive Sync - Rolling Update
    		_, err = argocd.NewApplicationSet(ctx, "progressive_sync", &argocd.ApplicationSetArgs{
    			Metadata: &argocd.ApplicationSetMetadataArgs{
    				Name: pulumi.String("progressive-sync"),
    			},
    			Spec: &argocd.ApplicationSetSpecArgs{
    				Generators: argocd.ApplicationSetSpecGeneratorArray{
    					&argocd.ApplicationSetSpecGeneratorArgs{
    						Lists: argocd.ApplicationSetSpecGeneratorListArray{
    							&argocd.ApplicationSetSpecGeneratorListArgs{
    								Elements: pulumi.StringMapArray{
    									pulumi.StringMap{
    										"cluster": pulumi.String("engineering-dev"),
    										"url":     pulumi.String("https://1.2.3.4"),
    										"env":     pulumi.String("env-dev"),
    									},
    									pulumi.StringMap{
    										"cluster": pulumi.String("engineering-qa"),
    										"url":     pulumi.String("https://2.4.6.8"),
    										"env":     pulumi.String("env-qa"),
    									},
    									pulumi.StringMap{
    										"cluster": pulumi.String("engineering-prod"),
    										"url":     pulumi.String("https://9.8.7.6/"),
    										"env":     pulumi.String("env-prod"),
    									},
    								},
    							},
    						},
    					},
    				},
    				Strategy: &argocd.ApplicationSetSpecStrategyArgs{
    					Type: pulumi.String("RollingSync"),
    					RollingSyncs: argocd.ApplicationSetSpecStrategyRollingSyncArray{
    						&argocd.ApplicationSetSpecStrategyRollingSyncArgs{
    							Steps: argocd.ApplicationSetSpecStrategyRollingSyncStepArray{
    								&argocd.ApplicationSetSpecStrategyRollingSyncStepArgs{
    									MatchExpressions: argocd.ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArray{
    										&argocd.ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArgs{
    											Key:      pulumi.String("envLabel"),
    											Operator: pulumi.String("In"),
    											Values: pulumi.StringArray{
    												pulumi.String("env-dev"),
    											},
    										},
    									},
    								},
    								&argocd.ApplicationSetSpecStrategyRollingSyncStepArgs{
    									MatchExpressions: argocd.ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArray{
    										&argocd.ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArgs{
    											Key:      pulumi.String("envLabel"),
    											Operator: pulumi.String("In"),
    											Values: pulumi.StringArray{
    												pulumi.String("env-qa"),
    											},
    										},
    									},
    									MaxUpdate: pulumi.String("0"),
    								},
    								&argocd.ApplicationSetSpecStrategyRollingSyncStepArgs{
    									MatchExpressions: argocd.ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArray{
    										&argocd.ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArgs{
    											Key:      pulumi.String("envLabel"),
    											Operator: pulumi.String("In"),
    											Values: pulumi.StringArray{
    												pulumi.String("env-prod"),
    											},
    										},
    									},
    									MaxUpdate: pulumi.String("10%"),
    								},
    							},
    						},
    					},
    				},
    				GoTemplate: pulumi.Bool(true),
    				Template: &argocd.ApplicationSetSpecTemplateArgs{
    					Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    						Name: pulumi.String("{{.cluster}}-guestbook"),
    						Labels: pulumi.StringMap{
    							"envLabel": pulumi.String("{{.env}}"),
    						},
    					},
    					Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    						Project: pulumi.String("default"),
    						Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    							&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    								RepoUrl:        pulumi.String("https://github.com/infra-team/cluster-deployments.git"),
    								Path:           pulumi.String("guestbook/{{.cluster}}"),
    								TargetRevision: pulumi.String("HEAD"),
    							},
    						},
    						Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    							Server:    pulumi.String("{{.url}}"),
    							Namespace: pulumi.String("guestbook"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Argocd = Three14.Argocd;
    
    return await Deployment.RunAsync(() => 
    {
        // Clusters Generator
        var clustersSelector = new Argocd.ApplicationSet("clusters_selector", new()
        {
            Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
            {
                Name = "clusters-selector",
            },
            Spec = new Argocd.Inputs.ApplicationSetSpecArgs
            {
                Generators = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                    {
                        Clusters = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorClusterArgs
                            {
                                Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterSelectorArgs
                                {
                                    MatchLabels = 
                                    {
                                        { "argocd.argoproj.io/secret-type", "cluster" },
                                    },
                                },
                            },
                        },
                    },
                },
                Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
                {
                    Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                    {
                        Name = "{{name}}-clusters-selector",
                    },
                    Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                    {
                        Sources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                            {
                                RepoUrl = "https://github.com/argoproj/argocd-example-apps/",
                                TargetRevision = "HEAD",
                                Path = "guestbook",
                            },
                        },
                        Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                        {
                            Server = "{{server}}",
                            Namespace = "default",
                        },
                    },
                },
            },
        });
    
        // Cluster Decision Resource Generator
        var clusterDecisionResource = new Argocd.ApplicationSet("cluster_decision_resource", new()
        {
            Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
            {
                Name = "cluster-decision-resource",
            },
            Spec = new Argocd.Inputs.ApplicationSetSpecArgs
            {
                Generators = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                    {
                        ClusterDecisionResources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceArgs
                            {
                                ConfigMapRef = "my-configmap",
                                Name = "quak",
                            },
                        },
                    },
                },
                Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
                {
                    Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                    {
                        Name = "{{name}}-guestbook",
                    },
                    Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                    {
                        Sources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                            {
                                RepoUrl = "https://github.com/argoproj/argocd-example-apps/",
                                TargetRevision = "HEAD",
                                Path = "guestbook",
                            },
                        },
                        Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                        {
                            Server = "{{server}}",
                            Namespace = "default",
                        },
                    },
                },
            },
        });
    
        // Git Generator - Directories
        var gitDirectories = new Argocd.ApplicationSet("git_directories", new()
        {
            Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
            {
                Name = "git-directories",
            },
            Spec = new Argocd.Inputs.ApplicationSetSpecArgs
            {
                Generators = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                    {
                        Gits = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorGitArgs
                            {
                                RepoUrl = "https://github.com/argoproj/argo-cd.git",
                                Revision = "HEAD",
                                Directories = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecGeneratorGitDirectoryArgs
                                    {
                                        Path = "applicationset/examples/git-generator-directory/cluster-addons/*",
                                    },
                                    new Argocd.Inputs.ApplicationSetSpecGeneratorGitDirectoryArgs
                                    {
                                        Path = "applicationset/examples/git-generator-directory/excludes/cluster-addons/exclude-helm-guestbook",
                                        Exclude = true,
                                    },
                                },
                            },
                        },
                    },
                },
                Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
                {
                    Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                    {
                        Name = "{{path.basename}}-git-directories",
                    },
                    Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                    {
                        Sources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                            {
                                RepoUrl = "https://github.com/argoproj/argo-cd.git",
                                TargetRevision = "HEAD",
                                Path = "{{path}}",
                            },
                        },
                        Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                        {
                            Server = "https://kubernetes.default.svc",
                            Namespace = "{{path.basename}}",
                        },
                    },
                },
            },
        });
    
        // Git Generator - Files
        var gitFiles = new Argocd.ApplicationSet("git_files", new()
        {
            Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
            {
                Name = "git-files",
            },
            Spec = new Argocd.Inputs.ApplicationSetSpecArgs
            {
                Generators = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                    {
                        Gits = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorGitArgs
                            {
                                RepoUrl = "https://github.com/argoproj/argo-cd.git",
                                Revision = "HEAD",
                                Files = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecGeneratorGitFileArgs
                                    {
                                        Path = "applicationset/examples/git-generator-files-discovery/cluster-config/**/config.json",
                                    },
                                },
                            },
                        },
                    },
                },
                Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
                {
                    Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                    {
                        Name = "{{cluster.name}}-git-files",
                    },
                    Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                    {
                        Sources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                            {
                                RepoUrl = "https://github.com/argoproj/argo-cd.git",
                                TargetRevision = "HEAD",
                                Path = "applicationset/examples/git-generator-files-discovery/apps/guestbook",
                            },
                        },
                        Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                        {
                            Server = "{{cluster.address}}",
                            Namespace = "guestbook",
                        },
                    },
                },
            },
        });
    
        // List Generator
        var list = new Argocd.ApplicationSet("list", new()
        {
            Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
            {
                Name = "list",
            },
            Spec = new Argocd.Inputs.ApplicationSetSpecArgs
            {
                Generators = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                    {
                        Lists = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorListArgs
                            {
                                Elements = new[]
                                {
                                    
                                    {
                                        { "cluster", "engineering-dev" },
                                        { "url", "https://kubernetes.default.svc" },
                                    },
                                    
                                    {
                                        { "cluster", "engineering-prod" },
                                        { "url", "https://kubernetes.default.svc" },
                                        { "foo", "bar" },
                                    },
                                },
                            },
                        },
                    },
                },
                Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
                {
                    Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                    {
                        Name = "{{cluster}}-guestbook",
                    },
                    Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                    {
                        Project = "my-project",
                        Sources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                            {
                                RepoUrl = "https://github.com/argoproj/argo-cd.git",
                                TargetRevision = "HEAD",
                                Path = "applicationset/examples/list-generator/guestbook/{{cluster}}",
                            },
                        },
                        Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                        {
                            Server = "{{url}}",
                            Namespace = "guestbook",
                        },
                    },
                },
            },
        });
    
        // Matrix Generator
        var matrix = new Argocd.ApplicationSet("matrix", new()
        {
            Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
            {
                Name = "matrix",
            },
            Spec = new Argocd.Inputs.ApplicationSetSpecArgs
            {
                Generators = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                    {
                        Matrices = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixArgs
                            {
                                Generators = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorArgs
                                    {
                                        Gits = new[]
                                        {
                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitArgs
                                            {
                                                RepoUrl = "https://github.com/argoproj/argo-cd.git",
                                                Revision = "HEAD",
                                                Directories = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitDirectoryArgs
                                                    {
                                                        Path = "applicationset/examples/matrix/cluster-addons/*",
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorArgs
                                    {
                                        Clusters = new[]
                                        {
                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterArgs
                                            {
                                                Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterSelectorArgs
                                                {
                                                    MatchLabels = 
                                                    {
                                                        { "argocd.argoproj.io/secret-type", "cluster" },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                },
                            },
                        },
                    },
                },
                Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
                {
                    Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                    {
                        Name = "{{path.basename}}-{{name}}",
                    },
                    Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                    {
                        Project = "default",
                        Sources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                            {
                                RepoUrl = "https://github.com/argoproj/argo-cd.git",
                                TargetRevision = "HEAD",
                                Path = "{{path}}",
                            },
                        },
                        Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                        {
                            Server = "{{server}}",
                            Namespace = "{{path.basename}}",
                        },
                    },
                },
            },
        });
    
        // Merge Generator
        var merge = new Argocd.ApplicationSet("merge", new()
        {
            Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
            {
                Name = "merge",
            },
            Spec = new Argocd.Inputs.ApplicationSetSpecArgs
            {
                Generators = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                    {
                        Merges = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorMergeArgs
                            {
                                MergeKeys = new[]
                                {
                                    "server",
                                },
                                Generators = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorArgs
                                    {
                                        Clusters = new[]
                                        {
                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterArgs
                                            {
                                                Values = 
                                                {
                                                    { "kafka", "true" },
                                                    { "redis", "false" },
                                                },
                                            },
                                        },
                                    },
                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorArgs
                                    {
                                        Clusters = new[]
                                        {
                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterArgs
                                            {
                                                Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterSelectorArgs
                                                {
                                                    MatchLabels = 
                                                    {
                                                        { "use-kafka", "false" },
                                                    },
                                                },
                                                Values = 
                                                {
                                                    { "kafka", "false" },
                                                },
                                            },
                                        },
                                    },
                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorArgs
                                    {
                                        Lists = new[]
                                        {
                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListArgs
                                            {
                                                Elements = new[]
                                                {
                                                    
                                                    {
                                                        { "server", "https://2.4.6.8" },
                                                        { "values.redis", "true" },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                },
                            },
                        },
                    },
                },
                Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
                {
                    Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                    {
                        Name = "{{name}}",
                    },
                    Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                    {
                        Project = "default",
                        Sources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                            {
                                RepoUrl = "https://github.com/argoproj/argo-cd.git",
                                Path = "app",
                                TargetRevision = "HEAD",
                                Helm = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceHelmArgs
                                {
                                    Parameters = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceHelmParameterArgs
                                        {
                                            Name = "kafka",
                                            Value = "{{values.kafka}}",
                                        },
                                        new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceHelmParameterArgs
                                        {
                                            Name = "redis",
                                            Value = "{{values.redis}}",
                                        },
                                    },
                                },
                            },
                        },
                        Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                        {
                            Server = "{{server}}",
                            Namespace = "default",
                        },
                    },
                },
            },
        });
    
        // Pull Request Generator - GitHub
        var prGithub = new Argocd.ApplicationSet("pr_github", new()
        {
            Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
            {
                Name = "pr-github",
            },
            Spec = new Argocd.Inputs.ApplicationSetSpecArgs
            {
                Generators = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                    {
                        PullRequests = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestArgs
                            {
                                Github = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestGithubArgs
                                {
                                    Api = "https://git.example.com/",
                                    Owner = "myorg",
                                    Repo = "myrepository",
                                    AppSecretName = "github-app-repo-creds",
                                    TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestGithubTokenRefArgs
                                    {
                                        SecretName = "github-token",
                                        Key = "token",
                                    },
                                    Labels = new[]
                                    {
                                        "preview",
                                    },
                                },
                            },
                        },
                    },
                },
                Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
                {
                    Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                    {
                        Name = "myapp-{{branch}}-{{number}}",
                    },
                    Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                    {
                        Project = "default",
                        Sources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                            {
                                RepoUrl = "https://github.com/myorg/myrepo.git",
                                Path = "kubernetes/",
                                TargetRevision = "{{head_sha}}",
                                Helm = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceHelmArgs
                                {
                                    Parameters = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceHelmParameterArgs
                                        {
                                            Name = "image.tag",
                                            Value = "pull-{{head_sha}}",
                                        },
                                    },
                                },
                            },
                        },
                        Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                        {
                            Server = "https://kubernetes.default.svc",
                            Namespace = "default",
                        },
                    },
                },
            },
        });
    
        // SCM Provider Generator - GitHub
        var scmGithub = new Argocd.ApplicationSet("scm_github", new()
        {
            Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
            {
                Name = "scm-github",
            },
            Spec = new Argocd.Inputs.ApplicationSetSpecArgs
            {
                Generators = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                    {
                        ScmProviders = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderArgs
                            {
                                Github = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderGithubArgs
                                {
                                    AppSecretName = "gh-app-repo-creds",
                                    Organization = "myorg",
                                },
                            },
                        },
                    },
                },
                Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
                {
                    Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                    {
                        Name = "{{repository}}",
                    },
                    Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                    {
                        Project = "default",
                        Sources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                            {
                                RepoUrl = "{{url}}",
                                Path = "kubernetes/",
                                TargetRevision = "{{branch}}",
                            },
                        },
                        Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                        {
                            Server = "https://kubernetes.default.svc",
                            Namespace = "default",
                        },
                    },
                },
            },
        });
    
        // Progressive Sync - Rolling Update
        var progressiveSync = new Argocd.ApplicationSet("progressive_sync", new()
        {
            Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
            {
                Name = "progressive-sync",
            },
            Spec = new Argocd.Inputs.ApplicationSetSpecArgs
            {
                Generators = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                    {
                        Lists = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorListArgs
                            {
                                Elements = new[]
                                {
                                    
                                    {
                                        { "cluster", "engineering-dev" },
                                        { "url", "https://1.2.3.4" },
                                        { "env", "env-dev" },
                                    },
                                    
                                    {
                                        { "cluster", "engineering-qa" },
                                        { "url", "https://2.4.6.8" },
                                        { "env", "env-qa" },
                                    },
                                    
                                    {
                                        { "cluster", "engineering-prod" },
                                        { "url", "https://9.8.7.6/" },
                                        { "env", "env-prod" },
                                    },
                                },
                            },
                        },
                    },
                },
                Strategy = new Argocd.Inputs.ApplicationSetSpecStrategyArgs
                {
                    Type = "RollingSync",
                    RollingSyncs = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecStrategyRollingSyncArgs
                        {
                            Steps = new[]
                            {
                                new Argocd.Inputs.ApplicationSetSpecStrategyRollingSyncStepArgs
                                {
                                    MatchExpressions = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArgs
                                        {
                                            Key = "envLabel",
                                            Operator = "In",
                                            Values = new[]
                                            {
                                                "env-dev",
                                            },
                                        },
                                    },
                                },
                                new Argocd.Inputs.ApplicationSetSpecStrategyRollingSyncStepArgs
                                {
                                    MatchExpressions = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArgs
                                        {
                                            Key = "envLabel",
                                            Operator = "In",
                                            Values = new[]
                                            {
                                                "env-qa",
                                            },
                                        },
                                    },
                                    MaxUpdate = "0",
                                },
                                new Argocd.Inputs.ApplicationSetSpecStrategyRollingSyncStepArgs
                                {
                                    MatchExpressions = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArgs
                                        {
                                            Key = "envLabel",
                                            Operator = "In",
                                            Values = new[]
                                            {
                                                "env-prod",
                                            },
                                        },
                                    },
                                    MaxUpdate = "10%",
                                },
                            },
                        },
                    },
                },
                GoTemplate = true,
                Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
                {
                    Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                    {
                        Name = "{{.cluster}}-guestbook",
                        Labels = 
                        {
                            { "envLabel", "{{.env}}" },
                        },
                    },
                    Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                    {
                        Project = "default",
                        Sources = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                            {
                                RepoUrl = "https://github.com/infra-team/cluster-deployments.git",
                                Path = "guestbook/{{.cluster}}",
                                TargetRevision = "HEAD",
                            },
                        },
                        Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                        {
                            Server = "{{.url}}",
                            Namespace = "guestbook",
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.argocd.ApplicationSet;
    import com.pulumi.argocd.ApplicationSetArgs;
    import com.pulumi.argocd.inputs.ApplicationSetMetadataArgs;
    import com.pulumi.argocd.inputs.ApplicationSetSpecArgs;
    import com.pulumi.argocd.inputs.ApplicationSetSpecTemplateArgs;
    import com.pulumi.argocd.inputs.ApplicationSetSpecTemplateMetadataArgs;
    import com.pulumi.argocd.inputs.ApplicationSetSpecTemplateSpecArgs;
    import com.pulumi.argocd.inputs.ApplicationSetSpecTemplateSpecDestinationArgs;
    import com.pulumi.argocd.inputs.ApplicationSetSpecStrategyArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            // Clusters Generator
            var clustersSelector = new ApplicationSet("clustersSelector", ApplicationSetArgs.builder()
                .metadata(ApplicationSetMetadataArgs.builder()
                    .name("clusters-selector")
                    .build())
                .spec(ApplicationSetSpecArgs.builder()
                    .generators(ApplicationSetSpecGeneratorArgs.builder()
                        .clusters(ApplicationSetSpecGeneratorClusterArgs.builder()
                            .selector(ApplicationSetSpecGeneratorClusterSelectorArgs.builder()
                                .matchLabels(Map.of("argocd.argoproj.io/secret-type", "cluster"))
                                .build())
                            .build())
                        .build())
                    .template(ApplicationSetSpecTemplateArgs.builder()
                        .metadata(ApplicationSetSpecTemplateMetadataArgs.builder()
                            .name("{{name}}-clusters-selector")
                            .build())
                        .spec(ApplicationSetSpecTemplateSpecArgs.builder()
                            .sources(ApplicationSetSpecTemplateSpecSourceArgs.builder()
                                .repoUrl("https://github.com/argoproj/argocd-example-apps/")
                                .targetRevision("HEAD")
                                .path("guestbook")
                                .build())
                            .destination(ApplicationSetSpecTemplateSpecDestinationArgs.builder()
                                .server("{{server}}")
                                .namespace("default")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
            // Cluster Decision Resource Generator
            var clusterDecisionResource = new ApplicationSet("clusterDecisionResource", ApplicationSetArgs.builder()
                .metadata(ApplicationSetMetadataArgs.builder()
                    .name("cluster-decision-resource")
                    .build())
                .spec(ApplicationSetSpecArgs.builder()
                    .generators(ApplicationSetSpecGeneratorArgs.builder()
                        .clusterDecisionResources(ApplicationSetSpecGeneratorClusterDecisionResourceArgs.builder()
                            .configMapRef("my-configmap")
                            .name("quak")
                            .build())
                        .build())
                    .template(ApplicationSetSpecTemplateArgs.builder()
                        .metadata(ApplicationSetSpecTemplateMetadataArgs.builder()
                            .name("{{name}}-guestbook")
                            .build())
                        .spec(ApplicationSetSpecTemplateSpecArgs.builder()
                            .sources(ApplicationSetSpecTemplateSpecSourceArgs.builder()
                                .repoUrl("https://github.com/argoproj/argocd-example-apps/")
                                .targetRevision("HEAD")
                                .path("guestbook")
                                .build())
                            .destination(ApplicationSetSpecTemplateSpecDestinationArgs.builder()
                                .server("{{server}}")
                                .namespace("default")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
            // Git Generator - Directories
            var gitDirectories = new ApplicationSet("gitDirectories", ApplicationSetArgs.builder()
                .metadata(ApplicationSetMetadataArgs.builder()
                    .name("git-directories")
                    .build())
                .spec(ApplicationSetSpecArgs.builder()
                    .generators(ApplicationSetSpecGeneratorArgs.builder()
                        .gits(ApplicationSetSpecGeneratorGitArgs.builder()
                            .repoUrl("https://github.com/argoproj/argo-cd.git")
                            .revision("HEAD")
                            .directories(                        
                                ApplicationSetSpecGeneratorGitDirectoryArgs.builder()
                                    .path("applicationset/examples/git-generator-directory/cluster-addons/*")
                                    .build(),
                                ApplicationSetSpecGeneratorGitDirectoryArgs.builder()
                                    .path("applicationset/examples/git-generator-directory/excludes/cluster-addons/exclude-helm-guestbook")
                                    .exclude(true)
                                    .build())
                            .build())
                        .build())
                    .template(ApplicationSetSpecTemplateArgs.builder()
                        .metadata(ApplicationSetSpecTemplateMetadataArgs.builder()
                            .name("{{path.basename}}-git-directories")
                            .build())
                        .spec(ApplicationSetSpecTemplateSpecArgs.builder()
                            .sources(ApplicationSetSpecTemplateSpecSourceArgs.builder()
                                .repoUrl("https://github.com/argoproj/argo-cd.git")
                                .targetRevision("HEAD")
                                .path("{{path}}")
                                .build())
                            .destination(ApplicationSetSpecTemplateSpecDestinationArgs.builder()
                                .server("https://kubernetes.default.svc")
                                .namespace("{{path.basename}}")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
            // Git Generator - Files
            var gitFiles = new ApplicationSet("gitFiles", ApplicationSetArgs.builder()
                .metadata(ApplicationSetMetadataArgs.builder()
                    .name("git-files")
                    .build())
                .spec(ApplicationSetSpecArgs.builder()
                    .generators(ApplicationSetSpecGeneratorArgs.builder()
                        .gits(ApplicationSetSpecGeneratorGitArgs.builder()
                            .repoUrl("https://github.com/argoproj/argo-cd.git")
                            .revision("HEAD")
                            .files(ApplicationSetSpecGeneratorGitFileArgs.builder()
                                .path("applicationset/examples/git-generator-files-discovery/cluster-config/**/config.json")
                                .build())
                            .build())
                        .build())
                    .template(ApplicationSetSpecTemplateArgs.builder()
                        .metadata(ApplicationSetSpecTemplateMetadataArgs.builder()
                            .name("{{cluster.name}}-git-files")
                            .build())
                        .spec(ApplicationSetSpecTemplateSpecArgs.builder()
                            .sources(ApplicationSetSpecTemplateSpecSourceArgs.builder()
                                .repoUrl("https://github.com/argoproj/argo-cd.git")
                                .targetRevision("HEAD")
                                .path("applicationset/examples/git-generator-files-discovery/apps/guestbook")
                                .build())
                            .destination(ApplicationSetSpecTemplateSpecDestinationArgs.builder()
                                .server("{{cluster.address}}")
                                .namespace("guestbook")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
            // List Generator
            var list = new ApplicationSet("list", ApplicationSetArgs.builder()
                .metadata(ApplicationSetMetadataArgs.builder()
                    .name("list")
                    .build())
                .spec(ApplicationSetSpecArgs.builder()
                    .generators(ApplicationSetSpecGeneratorArgs.builder()
                        .lists(ApplicationSetSpecGeneratorListArgs.builder()
                            .elements(                        
                                Map.ofEntries(
                                    Map.entry("cluster", "engineering-dev"),
                                    Map.entry("url", "https://kubernetes.default.svc")
                                ),
                                Map.ofEntries(
                                    Map.entry("cluster", "engineering-prod"),
                                    Map.entry("url", "https://kubernetes.default.svc"),
                                    Map.entry("foo", "bar")
                                ))
                            .build())
                        .build())
                    .template(ApplicationSetSpecTemplateArgs.builder()
                        .metadata(ApplicationSetSpecTemplateMetadataArgs.builder()
                            .name("{{cluster}}-guestbook")
                            .build())
                        .spec(ApplicationSetSpecTemplateSpecArgs.builder()
                            .project("my-project")
                            .sources(ApplicationSetSpecTemplateSpecSourceArgs.builder()
                                .repoUrl("https://github.com/argoproj/argo-cd.git")
                                .targetRevision("HEAD")
                                .path("applicationset/examples/list-generator/guestbook/{{cluster}}")
                                .build())
                            .destination(ApplicationSetSpecTemplateSpecDestinationArgs.builder()
                                .server("{{url}}")
                                .namespace("guestbook")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
            // Matrix Generator
            var matrix = new ApplicationSet("matrix", ApplicationSetArgs.builder()
                .metadata(ApplicationSetMetadataArgs.builder()
                    .name("matrix")
                    .build())
                .spec(ApplicationSetSpecArgs.builder()
                    .generators(ApplicationSetSpecGeneratorArgs.builder()
                        .matrices(ApplicationSetSpecGeneratorMatrixArgs.builder()
                            .generators(                        
                                ApplicationSetSpecGeneratorMatrixGeneratorArgs.builder()
                                    .gits(ApplicationSetSpecGeneratorMatrixGeneratorGitArgs.builder()
                                        .repoUrl("https://github.com/argoproj/argo-cd.git")
                                        .revision("HEAD")
                                        .directories(ApplicationSetSpecGeneratorMatrixGeneratorGitDirectoryArgs.builder()
                                            .path("applicationset/examples/matrix/cluster-addons/*")
                                            .build())
                                        .build())
                                    .build(),
                                ApplicationSetSpecGeneratorMatrixGeneratorArgs.builder()
                                    .clusters(ApplicationSetSpecGeneratorMatrixGeneratorClusterArgs.builder()
                                        .selector(ApplicationSetSpecGeneratorMatrixGeneratorClusterSelectorArgs.builder()
                                            .matchLabels(Map.of("argocd.argoproj.io/secret-type", "cluster"))
                                            .build())
                                        .build())
                                    .build())
                            .build())
                        .build())
                    .template(ApplicationSetSpecTemplateArgs.builder()
                        .metadata(ApplicationSetSpecTemplateMetadataArgs.builder()
                            .name("{{path.basename}}-{{name}}")
                            .build())
                        .spec(ApplicationSetSpecTemplateSpecArgs.builder()
                            .project("default")
                            .sources(ApplicationSetSpecTemplateSpecSourceArgs.builder()
                                .repoUrl("https://github.com/argoproj/argo-cd.git")
                                .targetRevision("HEAD")
                                .path("{{path}}")
                                .build())
                            .destination(ApplicationSetSpecTemplateSpecDestinationArgs.builder()
                                .server("{{server}}")
                                .namespace("{{path.basename}}")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
            // Merge Generator
            var merge = new ApplicationSet("merge", ApplicationSetArgs.builder()
                .metadata(ApplicationSetMetadataArgs.builder()
                    .name("merge")
                    .build())
                .spec(ApplicationSetSpecArgs.builder()
                    .generators(ApplicationSetSpecGeneratorArgs.builder()
                        .merges(ApplicationSetSpecGeneratorMergeArgs.builder()
                            .mergeKeys("server")
                            .generators(                        
                                ApplicationSetSpecGeneratorMergeGeneratorArgs.builder()
                                    .clusters(ApplicationSetSpecGeneratorMergeGeneratorClusterArgs.builder()
                                        .values(Map.ofEntries(
                                            Map.entry("kafka", true),
                                            Map.entry("redis", false)
                                        ))
                                        .build())
                                    .build(),
                                ApplicationSetSpecGeneratorMergeGeneratorArgs.builder()
                                    .clusters(ApplicationSetSpecGeneratorMergeGeneratorClusterArgs.builder()
                                        .selector(ApplicationSetSpecGeneratorMergeGeneratorClusterSelectorArgs.builder()
                                            .matchLabels(Map.of("use-kafka", "false"))
                                            .build())
                                        .values(Map.of("kafka", "false"))
                                        .build())
                                    .build(),
                                ApplicationSetSpecGeneratorMergeGeneratorArgs.builder()
                                    .lists(ApplicationSetSpecGeneratorMergeGeneratorListArgs.builder()
                                        .elements(Map.ofEntries(
                                            Map.entry("server", "https://2.4.6.8"),
                                            Map.entry("values.redis", "true")
                                        ))
                                        .build())
                                    .build())
                            .build())
                        .build())
                    .template(ApplicationSetSpecTemplateArgs.builder()
                        .metadata(ApplicationSetSpecTemplateMetadataArgs.builder()
                            .name("{{name}}")
                            .build())
                        .spec(ApplicationSetSpecTemplateSpecArgs.builder()
                            .project("default")
                            .sources(ApplicationSetSpecTemplateSpecSourceArgs.builder()
                                .repoUrl("https://github.com/argoproj/argo-cd.git")
                                .path("app")
                                .targetRevision("HEAD")
                                .helm(ApplicationSetSpecTemplateSpecSourceHelmArgs.builder()
                                    .parameters(                                
                                        ApplicationSetSpecTemplateSpecSourceHelmParameterArgs.builder()
                                            .name("kafka")
                                            .value("{{values.kafka}}")
                                            .build(),
                                        ApplicationSetSpecTemplateSpecSourceHelmParameterArgs.builder()
                                            .name("redis")
                                            .value("{{values.redis}}")
                                            .build())
                                    .build())
                                .build())
                            .destination(ApplicationSetSpecTemplateSpecDestinationArgs.builder()
                                .server("{{server}}")
                                .namespace("default")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
            // Pull Request Generator - GitHub
            var prGithub = new ApplicationSet("prGithub", ApplicationSetArgs.builder()
                .metadata(ApplicationSetMetadataArgs.builder()
                    .name("pr-github")
                    .build())
                .spec(ApplicationSetSpecArgs.builder()
                    .generators(ApplicationSetSpecGeneratorArgs.builder()
                        .pullRequests(ApplicationSetSpecGeneratorPullRequestArgs.builder()
                            .github(ApplicationSetSpecGeneratorPullRequestGithubArgs.builder()
                                .api("https://git.example.com/")
                                .owner("myorg")
                                .repo("myrepository")
                                .appSecretName("github-app-repo-creds")
                                .tokenRef(ApplicationSetSpecGeneratorPullRequestGithubTokenRefArgs.builder()
                                    .secretName("github-token")
                                    .key("token")
                                    .build())
                                .labels("preview")
                                .build())
                            .build())
                        .build())
                    .template(ApplicationSetSpecTemplateArgs.builder()
                        .metadata(ApplicationSetSpecTemplateMetadataArgs.builder()
                            .name("myapp-{{branch}}-{{number}}")
                            .build())
                        .spec(ApplicationSetSpecTemplateSpecArgs.builder()
                            .project("default")
                            .sources(ApplicationSetSpecTemplateSpecSourceArgs.builder()
                                .repoUrl("https://github.com/myorg/myrepo.git")
                                .path("kubernetes/")
                                .targetRevision("{{head_sha}}")
                                .helm(ApplicationSetSpecTemplateSpecSourceHelmArgs.builder()
                                    .parameters(ApplicationSetSpecTemplateSpecSourceHelmParameterArgs.builder()
                                        .name("image.tag")
                                        .value("pull-{{head_sha}}")
                                        .build())
                                    .build())
                                .build())
                            .destination(ApplicationSetSpecTemplateSpecDestinationArgs.builder()
                                .server("https://kubernetes.default.svc")
                                .namespace("default")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
            // SCM Provider Generator - GitHub
            var scmGithub = new ApplicationSet("scmGithub", ApplicationSetArgs.builder()
                .metadata(ApplicationSetMetadataArgs.builder()
                    .name("scm-github")
                    .build())
                .spec(ApplicationSetSpecArgs.builder()
                    .generators(ApplicationSetSpecGeneratorArgs.builder()
                        .scmProviders(ApplicationSetSpecGeneratorScmProviderArgs.builder()
                            .github(ApplicationSetSpecGeneratorScmProviderGithubArgs.builder()
                                .appSecretName("gh-app-repo-creds")
                                .organization("myorg")
                                .build())
                            .build())
                        .build())
                    .template(ApplicationSetSpecTemplateArgs.builder()
                        .metadata(ApplicationSetSpecTemplateMetadataArgs.builder()
                            .name("{{repository}}")
                            .build())
                        .spec(ApplicationSetSpecTemplateSpecArgs.builder()
                            .project("default")
                            .sources(ApplicationSetSpecTemplateSpecSourceArgs.builder()
                                .repoUrl("{{url}}")
                                .path("kubernetes/")
                                .targetRevision("{{branch}}")
                                .build())
                            .destination(ApplicationSetSpecTemplateSpecDestinationArgs.builder()
                                .server("https://kubernetes.default.svc")
                                .namespace("default")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
            // Progressive Sync - Rolling Update
            var progressiveSync = new ApplicationSet("progressiveSync", ApplicationSetArgs.builder()
                .metadata(ApplicationSetMetadataArgs.builder()
                    .name("progressive-sync")
                    .build())
                .spec(ApplicationSetSpecArgs.builder()
                    .generators(ApplicationSetSpecGeneratorArgs.builder()
                        .lists(ApplicationSetSpecGeneratorListArgs.builder()
                            .elements(                        
                                Map.ofEntries(
                                    Map.entry("cluster", "engineering-dev"),
                                    Map.entry("url", "https://1.2.3.4"),
                                    Map.entry("env", "env-dev")
                                ),
                                Map.ofEntries(
                                    Map.entry("cluster", "engineering-qa"),
                                    Map.entry("url", "https://2.4.6.8"),
                                    Map.entry("env", "env-qa")
                                ),
                                Map.ofEntries(
                                    Map.entry("cluster", "engineering-prod"),
                                    Map.entry("url", "https://9.8.7.6/"),
                                    Map.entry("env", "env-prod")
                                ))
                            .build())
                        .build())
                    .strategy(ApplicationSetSpecStrategyArgs.builder()
                        .type("RollingSync")
                        .rollingSyncs(ApplicationSetSpecStrategyRollingSyncArgs.builder()
                            .steps(                        
                                ApplicationSetSpecStrategyRollingSyncStepArgs.builder()
                                    .matchExpressions(ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArgs.builder()
                                        .key("envLabel")
                                        .operator("In")
                                        .values("env-dev")
                                        .build())
                                    .build(),
                                ApplicationSetSpecStrategyRollingSyncStepArgs.builder()
                                    .matchExpressions(ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArgs.builder()
                                        .key("envLabel")
                                        .operator("In")
                                        .values("env-qa")
                                        .build())
                                    .maxUpdate("0")
                                    .build(),
                                ApplicationSetSpecStrategyRollingSyncStepArgs.builder()
                                    .matchExpressions(ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArgs.builder()
                                        .key("envLabel")
                                        .operator("In")
                                        .values("env-prod")
                                        .build())
                                    .maxUpdate("10%")
                                    .build())
                            .build())
                        .build())
                    .goTemplate(true)
                    .template(ApplicationSetSpecTemplateArgs.builder()
                        .metadata(ApplicationSetSpecTemplateMetadataArgs.builder()
                            .name("{{.cluster}}-guestbook")
                            .labels(Map.of("envLabel", "{{.env}}"))
                            .build())
                        .spec(ApplicationSetSpecTemplateSpecArgs.builder()
                            .project("default")
                            .sources(ApplicationSetSpecTemplateSpecSourceArgs.builder()
                                .repoUrl("https://github.com/infra-team/cluster-deployments.git")
                                .path("guestbook/{{.cluster}}")
                                .targetRevision("HEAD")
                                .build())
                            .destination(ApplicationSetSpecTemplateSpecDestinationArgs.builder()
                                .server("{{.url}}")
                                .namespace("guestbook")
                                .build())
                            .build())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      # Clusters Generator
      clustersSelector:
        type: argocd:ApplicationSet
        name: clusters_selector
        properties:
          metadata:
            name: clusters-selector
          spec:
            generators:
              - clusters:
                  - selector:
                      matchLabels:
                        argocd.argoproj.io/secret-type: cluster
            template:
              metadata:
                name: '{{name}}-clusters-selector'
              spec:
                sources:
                  - repoUrl: https://github.com/argoproj/argocd-example-apps/
                    targetRevision: HEAD
                    path: guestbook
                destination:
                  server: '{{server}}'
                  namespace: default
      # Cluster Decision Resource Generator
      clusterDecisionResource:
        type: argocd:ApplicationSet
        name: cluster_decision_resource
        properties:
          metadata:
            name: cluster-decision-resource
          spec:
            generators:
              - clusterDecisionResources:
                  - configMapRef: my-configmap
                    name: quak
            template:
              metadata:
                name: '{{name}}-guestbook'
              spec:
                sources:
                  - repoUrl: https://github.com/argoproj/argocd-example-apps/
                    targetRevision: HEAD
                    path: guestbook
                destination:
                  server: '{{server}}'
                  namespace: default
      # Git Generator - Directories
      gitDirectories:
        type: argocd:ApplicationSet
        name: git_directories
        properties:
          metadata:
            name: git-directories
          spec:
            generators:
              - gits:
                  - repoUrl: https://github.com/argoproj/argo-cd.git
                    revision: HEAD
                    directories:
                      - path: applicationset/examples/git-generator-directory/cluster-addons/*
                      - path: applicationset/examples/git-generator-directory/excludes/cluster-addons/exclude-helm-guestbook
                        exclude: true
            template:
              metadata:
                name: '{{path.basename}}-git-directories'
              spec:
                sources:
                  - repoUrl: https://github.com/argoproj/argo-cd.git
                    targetRevision: HEAD
                    path: '{{path}}'
                destination:
                  server: https://kubernetes.default.svc
                  namespace: '{{path.basename}}'
      # Git Generator - Files
      gitFiles:
        type: argocd:ApplicationSet
        name: git_files
        properties:
          metadata:
            name: git-files
          spec:
            generators:
              - gits:
                  - repoUrl: https://github.com/argoproj/argo-cd.git
                    revision: HEAD
                    files:
                      - path: applicationset/examples/git-generator-files-discovery/cluster-config/**/config.json
            template:
              metadata:
                name: '{{cluster.name}}-git-files'
              spec:
                sources:
                  - repoUrl: https://github.com/argoproj/argo-cd.git
                    targetRevision: HEAD
                    path: applicationset/examples/git-generator-files-discovery/apps/guestbook
                destination:
                  server: '{{cluster.address}}'
                  namespace: guestbook
      # List Generator
      list:
        type: argocd:ApplicationSet
        properties:
          metadata:
            name: list
          spec:
            generators:
              - lists:
                  - elements:
                      - cluster: engineering-dev
                        url: https://kubernetes.default.svc
                      - cluster: engineering-prod
                        url: https://kubernetes.default.svc
                        foo: bar
            template:
              metadata:
                name: '{{cluster}}-guestbook'
              spec:
                project: my-project
                sources:
                  - repoUrl: https://github.com/argoproj/argo-cd.git
                    targetRevision: HEAD
                    path: applicationset/examples/list-generator/guestbook/{{cluster}}
                destination:
                  server: '{{url}}'
                  namespace: guestbook
      # Matrix Generator
      matrix:
        type: argocd:ApplicationSet
        properties:
          metadata:
            name: matrix
          spec:
            generators:
              - matrices:
                  - generators:
                      - gits:
                          - repoUrl: https://github.com/argoproj/argo-cd.git
                            revision: HEAD
                            directories:
                              - path: applicationset/examples/matrix/cluster-addons/*
                      - clusters:
                          - selector:
                              matchLabels:
                                argocd.argoproj.io/secret-type: cluster
            template:
              metadata:
                name: '{{path.basename}}-{{name}}'
              spec:
                project: default
                sources:
                  - repoUrl: https://github.com/argoproj/argo-cd.git
                    targetRevision: HEAD
                    path: '{{path}}'
                destination:
                  server: '{{server}}'
                  namespace: '{{path.basename}}'
      # Merge Generator
      merge:
        type: argocd:ApplicationSet
        properties:
          metadata:
            name: merge
          spec:
            generators:
              - merges:
                  - mergeKeys:
                      - server
                    generators:
                      - clusters:
                          - values:
                              kafka: true
                              redis: false
                      - clusters:
                          - selector:
                              matchLabels:
                                use-kafka: 'false'
                            values:
                              kafka: 'false'
                      - lists:
                          - elements:
                              - server: https://2.4.6.8
                                values.redis: 'true'
            template:
              metadata:
                name: '{{name}}'
              spec:
                project: default
                sources:
                  - repoUrl: https://github.com/argoproj/argo-cd.git
                    path: app
                    targetRevision: HEAD
                    helm:
                      parameters:
                        - name: kafka
                          value: '{{values.kafka}}'
                        - name: redis
                          value: '{{values.redis}}'
                destination:
                  server: '{{server}}'
                  namespace: default
      # Pull Request Generator - GitHub
      prGithub:
        type: argocd:ApplicationSet
        name: pr_github
        properties:
          metadata:
            name: pr-github
          spec:
            generators:
              - pullRequests:
                  - github:
                      api: https://git.example.com/
                      owner: myorg
                      repo: myrepository
                      appSecretName: github-app-repo-creds
                      tokenRef:
                        secretName: github-token
                        key: token
                      labels:
                        - preview
            template:
              metadata:
                name: myapp-{{branch}}-{{number}}
              spec:
                project: default
                sources:
                  - repoUrl: https://github.com/myorg/myrepo.git
                    path: kubernetes/
                    targetRevision: '{{head_sha}}'
                    helm:
                      parameters:
                        - name: image.tag
                          value: pull-{{head_sha}}
                destination:
                  server: https://kubernetes.default.svc
                  namespace: default
      # SCM Provider Generator - GitHub
      scmGithub:
        type: argocd:ApplicationSet
        name: scm_github
        properties:
          metadata:
            name: scm-github
          spec:
            generators:
              - scmProviders:
                  - github:
                      appSecretName: gh-app-repo-creds
                      organization: myorg
            template:
              metadata:
                name: '{{repository}}'
              spec:
                project: default
                sources:
                  - repoUrl: '{{url}}'
                    path: kubernetes/
                    targetRevision: '{{branch}}'
                destination:
                  server: https://kubernetes.default.svc
                  namespace: default
      # Progressive Sync - Rolling Update
      progressiveSync:
        type: argocd:ApplicationSet
        name: progressive_sync
        properties:
          metadata:
            name: progressive-sync
          spec:
            generators:
              - lists:
                  - elements:
                      - cluster: engineering-dev
                        url: https://1.2.3.4
                        env: env-dev
                      - cluster: engineering-qa
                        url: https://2.4.6.8
                        env: env-qa
                      - cluster: engineering-prod
                        url: https://9.8.7.6/
                        env: env-prod
            strategy:
              type: RollingSync
              rollingSyncs:
                - steps:
                    - matchExpressions:
                        - key: envLabel
                          operator: In
                          values:
                            - env-dev
                    - matchExpressions:
                        - key: envLabel
                          operator: In
                          values:
                            - env-qa
                      maxUpdate: '0'
                    - matchExpressions:
                        - key: envLabel
                          operator: In
                          values:
                            - env-prod
                      maxUpdate: 10%
            goTemplate: true
            template:
              metadata:
                name: '{{.cluster}}-guestbook'
                labels:
                  envLabel: '{{.env}}'
              spec:
                project: default
                sources:
                  - repoUrl: https://github.com/infra-team/cluster-deployments.git
                    path: guestbook/{{.cluster}}
                    targetRevision: HEAD
                destination:
                  server: '{{.url}}'
                  namespace: guestbook
    

    Create ApplicationSet Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ApplicationSet(name: string, args: ApplicationSetArgs, opts?: CustomResourceOptions);
    @overload
    def ApplicationSet(resource_name: str,
                       args: ApplicationSetArgs,
                       opts: Optional[ResourceOptions] = None)
    
    @overload
    def ApplicationSet(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       metadata: Optional[ApplicationSetMetadataArgs] = None,
                       spec: Optional[ApplicationSetSpecArgs] = None)
    func NewApplicationSet(ctx *Context, name string, args ApplicationSetArgs, opts ...ResourceOption) (*ApplicationSet, error)
    public ApplicationSet(string name, ApplicationSetArgs args, CustomResourceOptions? opts = null)
    public ApplicationSet(String name, ApplicationSetArgs args)
    public ApplicationSet(String name, ApplicationSetArgs args, CustomResourceOptions options)
    
    type: argocd:ApplicationSet
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ApplicationSetArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ApplicationSetArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ApplicationSetArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ApplicationSetArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ApplicationSetArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var applicationSetResource = new Argocd.ApplicationSet("applicationSetResource", new()
    {
        Metadata = new Argocd.Inputs.ApplicationSetMetadataArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            Generation = 0,
            Labels = 
            {
                { "string", "string" },
            },
            Name = "string",
            Namespace = "string",
            ResourceVersion = "string",
            Uid = "string",
        },
        Spec = new Argocd.Inputs.ApplicationSetSpecArgs
        {
            Generators = new[]
            {
                new Argocd.Inputs.ApplicationSetSpecGeneratorArgs
                {
                    ClusterDecisionResources = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceArgs
                        {
                            ConfigMapRef = "string",
                            LabelSelector = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceLabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Name = "string",
                            RequeueAfterSeconds = "string",
                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateArgs
                            {
                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateMetadataArgs
                                {
                                    Annotations = 
                                    {
                                        { "string", "string" },
                                    },
                                    Finalizers = new[]
                                    {
                                        "string",
                                    },
                                    Labels = 
                                    {
                                        { "string", "string" },
                                    },
                                    Name = "string",
                                    Namespace = "string",
                                },
                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecArgs
                                {
                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecDestinationArgs
                                    {
                                        Name = "string",
                                        Namespace = "string",
                                        Server = "string",
                                    },
                                    IgnoreDifferences = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs
                                        {
                                            Group = "string",
                                            JqPathExpressions = new[]
                                            {
                                                "string",
                                            },
                                            JsonPointers = new[]
                                            {
                                                "string",
                                            },
                                            Kind = "string",
                                            ManagedFieldsManagers = new[]
                                            {
                                                "string",
                                            },
                                            Name = "string",
                                            Namespace = "string",
                                        },
                                    },
                                    Infos = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecInfoArgs
                                        {
                                            Name = "string",
                                            Value = "string",
                                        },
                                    },
                                    Project = "string",
                                    RevisionHistoryLimit = 0,
                                    Sources = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceArgs
                                        {
                                            Chart = "string",
                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs
                                            {
                                                Exclude = "string",
                                                Include = "string",
                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs
                                                {
                                                    ExtVars = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Libs = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Tlas = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                },
                                                Recurse = false,
                                            },
                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs
                                            {
                                                FileParameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs
                                                    {
                                                        Name = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                IgnoreMissingValueFiles = false,
                                                Parameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs
                                                    {
                                                        ForceString = false,
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                PassCredentials = false,
                                                ReleaseName = "string",
                                                SkipCrds = false,
                                                ValueFiles = new[]
                                                {
                                                    "string",
                                                },
                                                Values = "string",
                                                Version = "string",
                                            },
                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs
                                            {
                                                CommonAnnotations = 
                                                {
                                                    { "string", "string" },
                                                },
                                                CommonLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                                Images = new[]
                                                {
                                                    "string",
                                                },
                                                NamePrefix = "string",
                                                NameSuffix = "string",
                                                Patches = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs
                                                    {
                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs
                                                        {
                                                            AnnotationSelector = "string",
                                                            Group = "string",
                                                            Kind = "string",
                                                            LabelSelector = "string",
                                                            Name = "string",
                                                            Namespace = "string",
                                                            Version = "string",
                                                        },
                                                        Options = 
                                                        {
                                                            { "string", false },
                                                        },
                                                        Patch = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                Version = "string",
                                            },
                                            Path = "string",
                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs
                                            {
                                                Envs = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs
                                                    {
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                Name = "string",
                                            },
                                            Ref = "string",
                                            RepoUrl = "string",
                                            TargetRevision = "string",
                                        },
                                    },
                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs
                                    {
                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs
                                        {
                                            AllowEmpty = false,
                                            Prune = false,
                                            SelfHeal = false,
                                        },
                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                        {
                                            Annotations = 
                                            {
                                                { "string", "string" },
                                            },
                                            Labels = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs
                                        {
                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs
                                            {
                                                Duration = "string",
                                                Factor = "string",
                                                MaxDuration = "string",
                                            },
                                            Limit = "string",
                                        },
                                        SyncOptions = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                            },
                            Values = 
                            {
                                { "string", "string" },
                            },
                        },
                    },
                    Clusters = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterArgs
                        {
                            Enabled = false,
                            Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecGeneratorClusterSelectorMatchExpressionArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateArgs
                            {
                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateMetadataArgs
                                {
                                    Annotations = 
                                    {
                                        { "string", "string" },
                                    },
                                    Finalizers = new[]
                                    {
                                        "string",
                                    },
                                    Labels = 
                                    {
                                        { "string", "string" },
                                    },
                                    Name = "string",
                                    Namespace = "string",
                                },
                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecArgs
                                {
                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecDestinationArgs
                                    {
                                        Name = "string",
                                        Namespace = "string",
                                        Server = "string",
                                    },
                                    IgnoreDifferences = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecIgnoreDifferenceArgs
                                        {
                                            Group = "string",
                                            JqPathExpressions = new[]
                                            {
                                                "string",
                                            },
                                            JsonPointers = new[]
                                            {
                                                "string",
                                            },
                                            Kind = "string",
                                            ManagedFieldsManagers = new[]
                                            {
                                                "string",
                                            },
                                            Name = "string",
                                            Namespace = "string",
                                        },
                                    },
                                    Infos = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecInfoArgs
                                        {
                                            Name = "string",
                                            Value = "string",
                                        },
                                    },
                                    Project = "string",
                                    RevisionHistoryLimit = 0,
                                    Sources = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceArgs
                                        {
                                            Chart = "string",
                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceDirectoryArgs
                                            {
                                                Exclude = "string",
                                                Include = "string",
                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs
                                                {
                                                    ExtVars = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Libs = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Tlas = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                },
                                                Recurse = false,
                                            },
                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceHelmArgs
                                            {
                                                FileParameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceHelmFileParameterArgs
                                                    {
                                                        Name = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                IgnoreMissingValueFiles = false,
                                                Parameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceHelmParameterArgs
                                                    {
                                                        ForceString = false,
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                PassCredentials = false,
                                                ReleaseName = "string",
                                                SkipCrds = false,
                                                ValueFiles = new[]
                                                {
                                                    "string",
                                                },
                                                Values = "string",
                                                Version = "string",
                                            },
                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceKustomizeArgs
                                            {
                                                CommonAnnotations = 
                                                {
                                                    { "string", "string" },
                                                },
                                                CommonLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                                Images = new[]
                                                {
                                                    "string",
                                                },
                                                NamePrefix = "string",
                                                NameSuffix = "string",
                                                Patches = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceKustomizePatchArgs
                                                    {
                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs
                                                        {
                                                            AnnotationSelector = "string",
                                                            Group = "string",
                                                            Kind = "string",
                                                            LabelSelector = "string",
                                                            Name = "string",
                                                            Namespace = "string",
                                                            Version = "string",
                                                        },
                                                        Options = 
                                                        {
                                                            { "string", false },
                                                        },
                                                        Patch = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                Version = "string",
                                            },
                                            Path = "string",
                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourcePluginArgs
                                            {
                                                Envs = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSourcePluginEnvArgs
                                                    {
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                Name = "string",
                                            },
                                            Ref = "string",
                                            RepoUrl = "string",
                                            TargetRevision = "string",
                                        },
                                    },
                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSyncPolicyArgs
                                    {
                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs
                                        {
                                            AllowEmpty = false,
                                            Prune = false,
                                            SelfHeal = false,
                                        },
                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                        {
                                            Annotations = 
                                            {
                                                { "string", "string" },
                                            },
                                            Labels = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSyncPolicyRetryArgs
                                        {
                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs
                                            {
                                                Duration = "string",
                                                Factor = "string",
                                                MaxDuration = "string",
                                            },
                                            Limit = "string",
                                        },
                                        SyncOptions = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                            },
                            Values = 
                            {
                                { "string", "string" },
                            },
                        },
                    },
                    Gits = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecGeneratorGitArgs
                        {
                            RepoUrl = "string",
                            Directories = new[]
                            {
                                new Argocd.Inputs.ApplicationSetSpecGeneratorGitDirectoryArgs
                                {
                                    Path = "string",
                                    Exclude = false,
                                },
                            },
                            Files = new[]
                            {
                                new Argocd.Inputs.ApplicationSetSpecGeneratorGitFileArgs
                                {
                                    Path = "string",
                                },
                            },
                            PathParamPrefix = "string",
                            Revision = "string",
                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateArgs
                            {
                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateMetadataArgs
                                {
                                    Annotations = 
                                    {
                                        { "string", "string" },
                                    },
                                    Finalizers = new[]
                                    {
                                        "string",
                                    },
                                    Labels = 
                                    {
                                        { "string", "string" },
                                    },
                                    Name = "string",
                                    Namespace = "string",
                                },
                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecArgs
                                {
                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecDestinationArgs
                                    {
                                        Name = "string",
                                        Namespace = "string",
                                        Server = "string",
                                    },
                                    IgnoreDifferences = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecIgnoreDifferenceArgs
                                        {
                                            Group = "string",
                                            JqPathExpressions = new[]
                                            {
                                                "string",
                                            },
                                            JsonPointers = new[]
                                            {
                                                "string",
                                            },
                                            Kind = "string",
                                            ManagedFieldsManagers = new[]
                                            {
                                                "string",
                                            },
                                            Name = "string",
                                            Namespace = "string",
                                        },
                                    },
                                    Infos = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecInfoArgs
                                        {
                                            Name = "string",
                                            Value = "string",
                                        },
                                    },
                                    Project = "string",
                                    RevisionHistoryLimit = 0,
                                    Sources = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceArgs
                                        {
                                            Chart = "string",
                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceDirectoryArgs
                                            {
                                                Exclude = "string",
                                                Include = "string",
                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs
                                                {
                                                    ExtVars = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Libs = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Tlas = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                },
                                                Recurse = false,
                                            },
                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceHelmArgs
                                            {
                                                FileParameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceHelmFileParameterArgs
                                                    {
                                                        Name = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                IgnoreMissingValueFiles = false,
                                                Parameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceHelmParameterArgs
                                                    {
                                                        ForceString = false,
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                PassCredentials = false,
                                                ReleaseName = "string",
                                                SkipCrds = false,
                                                ValueFiles = new[]
                                                {
                                                    "string",
                                                },
                                                Values = "string",
                                                Version = "string",
                                            },
                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceKustomizeArgs
                                            {
                                                CommonAnnotations = 
                                                {
                                                    { "string", "string" },
                                                },
                                                CommonLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                                Images = new[]
                                                {
                                                    "string",
                                                },
                                                NamePrefix = "string",
                                                NameSuffix = "string",
                                                Patches = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceKustomizePatchArgs
                                                    {
                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs
                                                        {
                                                            AnnotationSelector = "string",
                                                            Group = "string",
                                                            Kind = "string",
                                                            LabelSelector = "string",
                                                            Name = "string",
                                                            Namespace = "string",
                                                            Version = "string",
                                                        },
                                                        Options = 
                                                        {
                                                            { "string", false },
                                                        },
                                                        Patch = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                Version = "string",
                                            },
                                            Path = "string",
                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourcePluginArgs
                                            {
                                                Envs = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSourcePluginEnvArgs
                                                    {
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                Name = "string",
                                            },
                                            Ref = "string",
                                            RepoUrl = "string",
                                            TargetRevision = "string",
                                        },
                                    },
                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSyncPolicyArgs
                                    {
                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSyncPolicyAutomatedArgs
                                        {
                                            AllowEmpty = false,
                                            Prune = false,
                                            SelfHeal = false,
                                        },
                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                        {
                                            Annotations = 
                                            {
                                                { "string", "string" },
                                            },
                                            Labels = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSyncPolicyRetryArgs
                                        {
                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs
                                            {
                                                Duration = "string",
                                                Factor = "string",
                                                MaxDuration = "string",
                                            },
                                            Limit = "string",
                                        },
                                        SyncOptions = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                            },
                            Values = 
                            {
                                { "string", "string" },
                            },
                        },
                    },
                    Lists = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecGeneratorListArgs
                        {
                            Elements = new[]
                            {
                                
                                {
                                    { "string", "string" },
                                },
                            },
                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateArgs
                            {
                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateMetadataArgs
                                {
                                    Annotations = 
                                    {
                                        { "string", "string" },
                                    },
                                    Finalizers = new[]
                                    {
                                        "string",
                                    },
                                    Labels = 
                                    {
                                        { "string", "string" },
                                    },
                                    Name = "string",
                                    Namespace = "string",
                                },
                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecArgs
                                {
                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecDestinationArgs
                                    {
                                        Name = "string",
                                        Namespace = "string",
                                        Server = "string",
                                    },
                                    IgnoreDifferences = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecIgnoreDifferenceArgs
                                        {
                                            Group = "string",
                                            JqPathExpressions = new[]
                                            {
                                                "string",
                                            },
                                            JsonPointers = new[]
                                            {
                                                "string",
                                            },
                                            Kind = "string",
                                            ManagedFieldsManagers = new[]
                                            {
                                                "string",
                                            },
                                            Name = "string",
                                            Namespace = "string",
                                        },
                                    },
                                    Infos = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecInfoArgs
                                        {
                                            Name = "string",
                                            Value = "string",
                                        },
                                    },
                                    Project = "string",
                                    RevisionHistoryLimit = 0,
                                    Sources = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceArgs
                                        {
                                            Chart = "string",
                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceDirectoryArgs
                                            {
                                                Exclude = "string",
                                                Include = "string",
                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceDirectoryJsonnetArgs
                                                {
                                                    ExtVars = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Libs = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Tlas = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                },
                                                Recurse = false,
                                            },
                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceHelmArgs
                                            {
                                                FileParameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceHelmFileParameterArgs
                                                    {
                                                        Name = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                IgnoreMissingValueFiles = false,
                                                Parameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceHelmParameterArgs
                                                    {
                                                        ForceString = false,
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                PassCredentials = false,
                                                ReleaseName = "string",
                                                SkipCrds = false,
                                                ValueFiles = new[]
                                                {
                                                    "string",
                                                },
                                                Values = "string",
                                                Version = "string",
                                            },
                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceKustomizeArgs
                                            {
                                                CommonAnnotations = 
                                                {
                                                    { "string", "string" },
                                                },
                                                CommonLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                                Images = new[]
                                                {
                                                    "string",
                                                },
                                                NamePrefix = "string",
                                                NameSuffix = "string",
                                                Patches = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceKustomizePatchArgs
                                                    {
                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourceKustomizePatchTargetArgs
                                                        {
                                                            AnnotationSelector = "string",
                                                            Group = "string",
                                                            Kind = "string",
                                                            LabelSelector = "string",
                                                            Name = "string",
                                                            Namespace = "string",
                                                            Version = "string",
                                                        },
                                                        Options = 
                                                        {
                                                            { "string", false },
                                                        },
                                                        Patch = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                Version = "string",
                                            },
                                            Path = "string",
                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourcePluginArgs
                                            {
                                                Envs = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSourcePluginEnvArgs
                                                    {
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                Name = "string",
                                            },
                                            Ref = "string",
                                            RepoUrl = "string",
                                            TargetRevision = "string",
                                        },
                                    },
                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSyncPolicyArgs
                                    {
                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSyncPolicyAutomatedArgs
                                        {
                                            AllowEmpty = false,
                                            Prune = false,
                                            SelfHeal = false,
                                        },
                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                        {
                                            Annotations = 
                                            {
                                                { "string", "string" },
                                            },
                                            Labels = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSyncPolicyRetryArgs
                                        {
                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs
                                            {
                                                Duration = "string",
                                                Factor = "string",
                                                MaxDuration = "string",
                                            },
                                            Limit = "string",
                                        },
                                        SyncOptions = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                            },
                        },
                    },
                    Matrices = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixArgs
                        {
                            Generators = new[]
                            {
                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorArgs
                                {
                                    ClusterDecisionResources = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceArgs
                                        {
                                            ConfigMapRef = "string",
                                            LabelSelector = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorArgs
                                            {
                                                MatchExpressions = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs
                                                    {
                                                        Key = "string",
                                                        Operator = "string",
                                                        Values = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                                MatchLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                            },
                                            Name = "string",
                                            RequeueAfterSeconds = "string",
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                            Values = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                    },
                                    Clusters = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterArgs
                                        {
                                            Enabled = false,
                                            Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterSelectorArgs
                                            {
                                                MatchExpressions = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterSelectorMatchExpressionArgs
                                                    {
                                                        Key = "string",
                                                        Operator = "string",
                                                        Values = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                                MatchLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                            },
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                            Values = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                    },
                                    Gits = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitArgs
                                        {
                                            RepoUrl = "string",
                                            Directories = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitDirectoryArgs
                                                {
                                                    Path = "string",
                                                    Exclude = false,
                                                },
                                            },
                                            Files = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitFileArgs
                                                {
                                                    Path = "string",
                                                },
                                            },
                                            PathParamPrefix = "string",
                                            Revision = "string",
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                            Values = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                    },
                                    Lists = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListArgs
                                        {
                                            Elements = new[]
                                            {
                                                
                                                {
                                                    { "string", "string" },
                                                },
                                            },
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    Matrices = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixArgs
                                        {
                                            Generators = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorArgs
                                                {
                                                    ClusterDecisionResources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceArgs
                                                        {
                                                            ConfigMapRef = "string",
                                                            LabelSelector = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorArgs
                                                            {
                                                                MatchExpressions = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs
                                                                    {
                                                                        Key = "string",
                                                                        Operator = "string",
                                                                        Values = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                                MatchLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Name = "string",
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Clusters = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterArgs
                                                        {
                                                            Enabled = false,
                                                            Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterSelectorArgs
                                                            {
                                                                MatchExpressions = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterSelectorMatchExpressionArgs
                                                                    {
                                                                        Key = "string",
                                                                        Operator = "string",
                                                                        Values = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                                MatchLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Gits = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitArgs
                                                        {
                                                            RepoUrl = "string",
                                                            Directories = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitDirectoryArgs
                                                                {
                                                                    Path = "string",
                                                                    Exclude = false,
                                                                },
                                                            },
                                                            Files = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitFileArgs
                                                                {
                                                                    Path = "string",
                                                                },
                                                            },
                                                            PathParamPrefix = "string",
                                                            Revision = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Lists = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListArgs
                                                        {
                                                            Elements = new[]
                                                            {
                                                                
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    PullRequests = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestArgs
                                                        {
                                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestBitbucketServerArgs
                                                            {
                                                                Api = "string",
                                                                Project = "string",
                                                                Repo = "string",
                                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthArgs
                                                                {
                                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs
                                                                    {
                                                                        Key = "string",
                                                                        SecretName = "string",
                                                                    },
                                                                    Username = "string",
                                                                },
                                                            },
                                                            Filters = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestFilterArgs
                                                                {
                                                                    BranchMatch = "string",
                                                                },
                                                            },
                                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGiteaArgs
                                                            {
                                                                Api = "string",
                                                                Owner = "string",
                                                                Repo = "string",
                                                                Insecure = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGiteaTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGithubArgs
                                                            {
                                                                Owner = "string",
                                                                Repo = "string",
                                                                Api = "string",
                                                                AppSecretName = "string",
                                                                Labels = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGithubTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGitlabArgs
                                                            {
                                                                Project = "string",
                                                                Api = "string",
                                                                Labels = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                PullRequestState = "string",
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGitlabTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    ScmProviders = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderArgs
                                                        {
                                                            AzureDevops = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderAzureDevopsArgs
                                                            {
                                                                Organization = "string",
                                                                TeamProject = "string",
                                                                AccessTokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderAzureDevopsAccessTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                                AllBranches = false,
                                                                Api = "string",
                                                            },
                                                            BitbucketCloud = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderBitbucketCloudArgs
                                                            {
                                                                Owner = "string",
                                                                User = "string",
                                                                AllBranches = false,
                                                                AppPasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderBitbucketCloudAppPasswordRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderBitbucketServerArgs
                                                            {
                                                                Api = "string",
                                                                Project = "string",
                                                                AllBranches = false,
                                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthArgs
                                                                {
                                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs
                                                                    {
                                                                        Key = "string",
                                                                        SecretName = "string",
                                                                    },
                                                                    Username = "string",
                                                                },
                                                            },
                                                            CloneProtocol = "string",
                                                            Filters = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderFilterArgs
                                                                {
                                                                    BranchMatch = "string",
                                                                    LabelMatch = "string",
                                                                    PathsDoNotExists = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    PathsExists = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    RepositoryMatch = "string",
                                                                },
                                                            },
                                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGiteaArgs
                                                            {
                                                                Owner = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                Insecure = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGiteaTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGithubArgs
                                                            {
                                                                Organization = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                AppSecretName = "string",
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGithubTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGitlabArgs
                                                            {
                                                                Group = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                IncludeSubgroups = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGitlabTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorSelectorArgs
                                                    {
                                                        MatchExpressions = new[]
                                                        {
                                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorSelectorMatchExpressionArgs
                                                            {
                                                                Key = "string",
                                                                Operator = "string",
                                                                Values = new[]
                                                                {
                                                                    "string",
                                                                },
                                                            },
                                                        },
                                                        MatchLabels = 
                                                        {
                                                            { "string", "string" },
                                                        },
                                                    },
                                                },
                                            },
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    Merges = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeArgs
                                        {
                                            Generators = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorArgs
                                                {
                                                    ClusterDecisionResources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceArgs
                                                        {
                                                            ConfigMapRef = "string",
                                                            LabelSelector = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorArgs
                                                            {
                                                                MatchExpressions = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs
                                                                    {
                                                                        Key = "string",
                                                                        Operator = "string",
                                                                        Values = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                                MatchLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Name = "string",
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Clusters = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterArgs
                                                        {
                                                            Enabled = false,
                                                            Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterSelectorArgs
                                                            {
                                                                MatchExpressions = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterSelectorMatchExpressionArgs
                                                                    {
                                                                        Key = "string",
                                                                        Operator = "string",
                                                                        Values = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                                MatchLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Gits = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitArgs
                                                        {
                                                            RepoUrl = "string",
                                                            Directories = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitDirectoryArgs
                                                                {
                                                                    Path = "string",
                                                                    Exclude = false,
                                                                },
                                                            },
                                                            Files = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitFileArgs
                                                                {
                                                                    Path = "string",
                                                                },
                                                            },
                                                            PathParamPrefix = "string",
                                                            Revision = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Lists = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListArgs
                                                        {
                                                            Elements = new[]
                                                            {
                                                                
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    PullRequests = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestArgs
                                                        {
                                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestBitbucketServerArgs
                                                            {
                                                                Api = "string",
                                                                Project = "string",
                                                                Repo = "string",
                                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthArgs
                                                                {
                                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs
                                                                    {
                                                                        Key = "string",
                                                                        SecretName = "string",
                                                                    },
                                                                    Username = "string",
                                                                },
                                                            },
                                                            Filters = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestFilterArgs
                                                                {
                                                                    BranchMatch = "string",
                                                                },
                                                            },
                                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGiteaArgs
                                                            {
                                                                Api = "string",
                                                                Owner = "string",
                                                                Repo = "string",
                                                                Insecure = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGiteaTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGithubArgs
                                                            {
                                                                Owner = "string",
                                                                Repo = "string",
                                                                Api = "string",
                                                                AppSecretName = "string",
                                                                Labels = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGithubTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGitlabArgs
                                                            {
                                                                Project = "string",
                                                                Api = "string",
                                                                Labels = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                PullRequestState = "string",
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGitlabTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    ScmProviders = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderArgs
                                                        {
                                                            AzureDevops = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderAzureDevopsArgs
                                                            {
                                                                Organization = "string",
                                                                TeamProject = "string",
                                                                AccessTokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderAzureDevopsAccessTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                                AllBranches = false,
                                                                Api = "string",
                                                            },
                                                            BitbucketCloud = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderBitbucketCloudArgs
                                                            {
                                                                Owner = "string",
                                                                User = "string",
                                                                AllBranches = false,
                                                                AppPasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderBitbucketCloudAppPasswordRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderBitbucketServerArgs
                                                            {
                                                                Api = "string",
                                                                Project = "string",
                                                                AllBranches = false,
                                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthArgs
                                                                {
                                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs
                                                                    {
                                                                        Key = "string",
                                                                        SecretName = "string",
                                                                    },
                                                                    Username = "string",
                                                                },
                                                            },
                                                            CloneProtocol = "string",
                                                            Filters = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderFilterArgs
                                                                {
                                                                    BranchMatch = "string",
                                                                    LabelMatch = "string",
                                                                    PathsDoNotExists = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    PathsExists = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    RepositoryMatch = "string",
                                                                },
                                                            },
                                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGiteaArgs
                                                            {
                                                                Owner = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                Insecure = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGiteaTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGithubArgs
                                                            {
                                                                Organization = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                AppSecretName = "string",
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGithubTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGitlabArgs
                                                            {
                                                                Group = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                IncludeSubgroups = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGitlabTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorSelectorArgs
                                                    {
                                                        MatchExpressions = new[]
                                                        {
                                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorSelectorMatchExpressionArgs
                                                            {
                                                                Key = "string",
                                                                Operator = "string",
                                                                Values = new[]
                                                                {
                                                                    "string",
                                                                },
                                                            },
                                                        },
                                                        MatchLabels = 
                                                        {
                                                            { "string", "string" },
                                                        },
                                                    },
                                                },
                                            },
                                            MergeKeys = new[]
                                            {
                                                "string",
                                            },
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    PullRequests = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestArgs
                                        {
                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestBitbucketServerArgs
                                            {
                                                Api = "string",
                                                Project = "string",
                                                Repo = "string",
                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthArgs
                                                {
                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs
                                                    {
                                                        Key = "string",
                                                        SecretName = "string",
                                                    },
                                                    Username = "string",
                                                },
                                            },
                                            Filters = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestFilterArgs
                                                {
                                                    BranchMatch = "string",
                                                },
                                            },
                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGiteaArgs
                                            {
                                                Api = "string",
                                                Owner = "string",
                                                Repo = "string",
                                                Insecure = false,
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGiteaTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGithubArgs
                                            {
                                                Owner = "string",
                                                Repo = "string",
                                                Api = "string",
                                                AppSecretName = "string",
                                                Labels = new[]
                                                {
                                                    "string",
                                                },
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGithubTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGitlabArgs
                                            {
                                                Project = "string",
                                                Api = "string",
                                                Labels = new[]
                                                {
                                                    "string",
                                                },
                                                PullRequestState = "string",
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGitlabTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            RequeueAfterSeconds = "string",
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    ScmProviders = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderArgs
                                        {
                                            AzureDevops = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderAzureDevopsArgs
                                            {
                                                Organization = "string",
                                                TeamProject = "string",
                                                AccessTokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderAzureDevopsAccessTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                                AllBranches = false,
                                                Api = "string",
                                            },
                                            BitbucketCloud = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderBitbucketCloudArgs
                                            {
                                                Owner = "string",
                                                User = "string",
                                                AllBranches = false,
                                                AppPasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderBitbucketCloudAppPasswordRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderBitbucketServerArgs
                                            {
                                                Api = "string",
                                                Project = "string",
                                                AllBranches = false,
                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthArgs
                                                {
                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs
                                                    {
                                                        Key = "string",
                                                        SecretName = "string",
                                                    },
                                                    Username = "string",
                                                },
                                            },
                                            CloneProtocol = "string",
                                            Filters = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderFilterArgs
                                                {
                                                    BranchMatch = "string",
                                                    LabelMatch = "string",
                                                    PathsDoNotExists = new[]
                                                    {
                                                        "string",
                                                    },
                                                    PathsExists = new[]
                                                    {
                                                        "string",
                                                    },
                                                    RepositoryMatch = "string",
                                                },
                                            },
                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGiteaArgs
                                            {
                                                Owner = "string",
                                                AllBranches = false,
                                                Api = "string",
                                                Insecure = false,
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGiteaTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGithubArgs
                                            {
                                                Organization = "string",
                                                AllBranches = false,
                                                Api = "string",
                                                AppSecretName = "string",
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGithubTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGitlabArgs
                                            {
                                                Group = "string",
                                                AllBranches = false,
                                                Api = "string",
                                                IncludeSubgroups = false,
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGitlabTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            RequeueAfterSeconds = "string",
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorSelectorArgs
                                    {
                                        MatchExpressions = new[]
                                        {
                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixGeneratorSelectorMatchExpressionArgs
                                            {
                                                Key = "string",
                                                Operator = "string",
                                                Values = new[]
                                                {
                                                    "string",
                                                },
                                            },
                                        },
                                        MatchLabels = 
                                        {
                                            { "string", "string" },
                                        },
                                    },
                                },
                            },
                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateArgs
                            {
                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateMetadataArgs
                                {
                                    Annotations = 
                                    {
                                        { "string", "string" },
                                    },
                                    Finalizers = new[]
                                    {
                                        "string",
                                    },
                                    Labels = 
                                    {
                                        { "string", "string" },
                                    },
                                    Name = "string",
                                    Namespace = "string",
                                },
                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecArgs
                                {
                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecDestinationArgs
                                    {
                                        Name = "string",
                                        Namespace = "string",
                                        Server = "string",
                                    },
                                    IgnoreDifferences = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecIgnoreDifferenceArgs
                                        {
                                            Group = "string",
                                            JqPathExpressions = new[]
                                            {
                                                "string",
                                            },
                                            JsonPointers = new[]
                                            {
                                                "string",
                                            },
                                            Kind = "string",
                                            ManagedFieldsManagers = new[]
                                            {
                                                "string",
                                            },
                                            Name = "string",
                                            Namespace = "string",
                                        },
                                    },
                                    Infos = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecInfoArgs
                                        {
                                            Name = "string",
                                            Value = "string",
                                        },
                                    },
                                    Project = "string",
                                    RevisionHistoryLimit = 0,
                                    Sources = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceArgs
                                        {
                                            Chart = "string",
                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceDirectoryArgs
                                            {
                                                Exclude = "string",
                                                Include = "string",
                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceDirectoryJsonnetArgs
                                                {
                                                    ExtVars = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Libs = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Tlas = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                },
                                                Recurse = false,
                                            },
                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceHelmArgs
                                            {
                                                FileParameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceHelmFileParameterArgs
                                                    {
                                                        Name = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                IgnoreMissingValueFiles = false,
                                                Parameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceHelmParameterArgs
                                                    {
                                                        ForceString = false,
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                PassCredentials = false,
                                                ReleaseName = "string",
                                                SkipCrds = false,
                                                ValueFiles = new[]
                                                {
                                                    "string",
                                                },
                                                Values = "string",
                                                Version = "string",
                                            },
                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceKustomizeArgs
                                            {
                                                CommonAnnotations = 
                                                {
                                                    { "string", "string" },
                                                },
                                                CommonLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                                Images = new[]
                                                {
                                                    "string",
                                                },
                                                NamePrefix = "string",
                                                NameSuffix = "string",
                                                Patches = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceKustomizePatchArgs
                                                    {
                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceKustomizePatchTargetArgs
                                                        {
                                                            AnnotationSelector = "string",
                                                            Group = "string",
                                                            Kind = "string",
                                                            LabelSelector = "string",
                                                            Name = "string",
                                                            Namespace = "string",
                                                            Version = "string",
                                                        },
                                                        Options = 
                                                        {
                                                            { "string", false },
                                                        },
                                                        Patch = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                Version = "string",
                                            },
                                            Path = "string",
                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourcePluginArgs
                                            {
                                                Envs = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSourcePluginEnvArgs
                                                    {
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                Name = "string",
                                            },
                                            Ref = "string",
                                            RepoUrl = "string",
                                            TargetRevision = "string",
                                        },
                                    },
                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSyncPolicyArgs
                                    {
                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSyncPolicyAutomatedArgs
                                        {
                                            AllowEmpty = false,
                                            Prune = false,
                                            SelfHeal = false,
                                        },
                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                        {
                                            Annotations = 
                                            {
                                                { "string", "string" },
                                            },
                                            Labels = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSyncPolicyRetryArgs
                                        {
                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMatrixTemplateSpecSyncPolicyRetryBackoffArgs
                                            {
                                                Duration = "string",
                                                Factor = "string",
                                                MaxDuration = "string",
                                            },
                                            Limit = "string",
                                        },
                                        SyncOptions = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                            },
                        },
                    },
                    Merges = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeArgs
                        {
                            Generators = new[]
                            {
                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorArgs
                                {
                                    ClusterDecisionResources = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceArgs
                                        {
                                            ConfigMapRef = "string",
                                            LabelSelector = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorArgs
                                            {
                                                MatchExpressions = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs
                                                    {
                                                        Key = "string",
                                                        Operator = "string",
                                                        Values = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                                MatchLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                            },
                                            Name = "string",
                                            RequeueAfterSeconds = "string",
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                            Values = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                    },
                                    Clusters = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterArgs
                                        {
                                            Enabled = false,
                                            Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterSelectorArgs
                                            {
                                                MatchExpressions = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterSelectorMatchExpressionArgs
                                                    {
                                                        Key = "string",
                                                        Operator = "string",
                                                        Values = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                                MatchLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                            },
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                            Values = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                    },
                                    Gits = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitArgs
                                        {
                                            RepoUrl = "string",
                                            Directories = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitDirectoryArgs
                                                {
                                                    Path = "string",
                                                    Exclude = false,
                                                },
                                            },
                                            Files = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitFileArgs
                                                {
                                                    Path = "string",
                                                },
                                            },
                                            PathParamPrefix = "string",
                                            Revision = "string",
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                            Values = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                    },
                                    Lists = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListArgs
                                        {
                                            Elements = new[]
                                            {
                                                
                                                {
                                                    { "string", "string" },
                                                },
                                            },
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    Matrices = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixArgs
                                        {
                                            Generators = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorArgs
                                                {
                                                    ClusterDecisionResources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceArgs
                                                        {
                                                            ConfigMapRef = "string",
                                                            LabelSelector = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorArgs
                                                            {
                                                                MatchExpressions = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs
                                                                    {
                                                                        Key = "string",
                                                                        Operator = "string",
                                                                        Values = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                                MatchLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Name = "string",
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Clusters = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterArgs
                                                        {
                                                            Enabled = false,
                                                            Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterSelectorArgs
                                                            {
                                                                MatchExpressions = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterSelectorMatchExpressionArgs
                                                                    {
                                                                        Key = "string",
                                                                        Operator = "string",
                                                                        Values = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                                MatchLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Gits = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitArgs
                                                        {
                                                            RepoUrl = "string",
                                                            Directories = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitDirectoryArgs
                                                                {
                                                                    Path = "string",
                                                                    Exclude = false,
                                                                },
                                                            },
                                                            Files = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitFileArgs
                                                                {
                                                                    Path = "string",
                                                                },
                                                            },
                                                            PathParamPrefix = "string",
                                                            Revision = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Lists = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListArgs
                                                        {
                                                            Elements = new[]
                                                            {
                                                                
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    PullRequests = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestArgs
                                                        {
                                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestBitbucketServerArgs
                                                            {
                                                                Api = "string",
                                                                Project = "string",
                                                                Repo = "string",
                                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthArgs
                                                                {
                                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs
                                                                    {
                                                                        Key = "string",
                                                                        SecretName = "string",
                                                                    },
                                                                    Username = "string",
                                                                },
                                                            },
                                                            Filters = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestFilterArgs
                                                                {
                                                                    BranchMatch = "string",
                                                                },
                                                            },
                                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGiteaArgs
                                                            {
                                                                Api = "string",
                                                                Owner = "string",
                                                                Repo = "string",
                                                                Insecure = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGiteaTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGithubArgs
                                                            {
                                                                Owner = "string",
                                                                Repo = "string",
                                                                Api = "string",
                                                                AppSecretName = "string",
                                                                Labels = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGithubTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGitlabArgs
                                                            {
                                                                Project = "string",
                                                                Api = "string",
                                                                Labels = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                PullRequestState = "string",
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGitlabTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    ScmProviders = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderArgs
                                                        {
                                                            AzureDevops = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderAzureDevopsArgs
                                                            {
                                                                Organization = "string",
                                                                TeamProject = "string",
                                                                AccessTokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderAzureDevopsAccessTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                                AllBranches = false,
                                                                Api = "string",
                                                            },
                                                            BitbucketCloud = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderBitbucketCloudArgs
                                                            {
                                                                Owner = "string",
                                                                User = "string",
                                                                AllBranches = false,
                                                                AppPasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderBitbucketCloudAppPasswordRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderBitbucketServerArgs
                                                            {
                                                                Api = "string",
                                                                Project = "string",
                                                                AllBranches = false,
                                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthArgs
                                                                {
                                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs
                                                                    {
                                                                        Key = "string",
                                                                        SecretName = "string",
                                                                    },
                                                                    Username = "string",
                                                                },
                                                            },
                                                            CloneProtocol = "string",
                                                            Filters = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderFilterArgs
                                                                {
                                                                    BranchMatch = "string",
                                                                    LabelMatch = "string",
                                                                    PathsDoNotExists = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    PathsExists = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    RepositoryMatch = "string",
                                                                },
                                                            },
                                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGiteaArgs
                                                            {
                                                                Owner = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                Insecure = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGiteaTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGithubArgs
                                                            {
                                                                Organization = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                AppSecretName = "string",
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGithubTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGitlabArgs
                                                            {
                                                                Group = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                IncludeSubgroups = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGitlabTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorSelectorArgs
                                                    {
                                                        MatchExpressions = new[]
                                                        {
                                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorSelectorMatchExpressionArgs
                                                            {
                                                                Key = "string",
                                                                Operator = "string",
                                                                Values = new[]
                                                                {
                                                                    "string",
                                                                },
                                                            },
                                                        },
                                                        MatchLabels = 
                                                        {
                                                            { "string", "string" },
                                                        },
                                                    },
                                                },
                                            },
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    Merges = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeArgs
                                        {
                                            Generators = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorArgs
                                                {
                                                    ClusterDecisionResources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceArgs
                                                        {
                                                            ConfigMapRef = "string",
                                                            LabelSelector = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorArgs
                                                            {
                                                                MatchExpressions = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs
                                                                    {
                                                                        Key = "string",
                                                                        Operator = "string",
                                                                        Values = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                                MatchLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Name = "string",
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Clusters = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterArgs
                                                        {
                                                            Enabled = false,
                                                            Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterSelectorArgs
                                                            {
                                                                MatchExpressions = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterSelectorMatchExpressionArgs
                                                                    {
                                                                        Key = "string",
                                                                        Operator = "string",
                                                                        Values = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                                MatchLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Gits = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitArgs
                                                        {
                                                            RepoUrl = "string",
                                                            Directories = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitDirectoryArgs
                                                                {
                                                                    Path = "string",
                                                                    Exclude = false,
                                                                },
                                                            },
                                                            Files = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitFileArgs
                                                                {
                                                                    Path = "string",
                                                                },
                                                            },
                                                            PathParamPrefix = "string",
                                                            Revision = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                            Values = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                    },
                                                    Lists = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListArgs
                                                        {
                                                            Elements = new[]
                                                            {
                                                                
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                            },
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    PullRequests = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestArgs
                                                        {
                                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestBitbucketServerArgs
                                                            {
                                                                Api = "string",
                                                                Project = "string",
                                                                Repo = "string",
                                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthArgs
                                                                {
                                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs
                                                                    {
                                                                        Key = "string",
                                                                        SecretName = "string",
                                                                    },
                                                                    Username = "string",
                                                                },
                                                            },
                                                            Filters = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestFilterArgs
                                                                {
                                                                    BranchMatch = "string",
                                                                },
                                                            },
                                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGiteaArgs
                                                            {
                                                                Api = "string",
                                                                Owner = "string",
                                                                Repo = "string",
                                                                Insecure = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGiteaTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGithubArgs
                                                            {
                                                                Owner = "string",
                                                                Repo = "string",
                                                                Api = "string",
                                                                AppSecretName = "string",
                                                                Labels = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGithubTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGitlabArgs
                                                            {
                                                                Project = "string",
                                                                Api = "string",
                                                                Labels = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                PullRequestState = "string",
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGitlabTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    ScmProviders = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderArgs
                                                        {
                                                            AzureDevops = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderAzureDevopsArgs
                                                            {
                                                                Organization = "string",
                                                                TeamProject = "string",
                                                                AccessTokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderAzureDevopsAccessTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                                AllBranches = false,
                                                                Api = "string",
                                                            },
                                                            BitbucketCloud = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderBitbucketCloudArgs
                                                            {
                                                                Owner = "string",
                                                                User = "string",
                                                                AllBranches = false,
                                                                AppPasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderBitbucketCloudAppPasswordRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderBitbucketServerArgs
                                                            {
                                                                Api = "string",
                                                                Project = "string",
                                                                AllBranches = false,
                                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthArgs
                                                                {
                                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs
                                                                    {
                                                                        Key = "string",
                                                                        SecretName = "string",
                                                                    },
                                                                    Username = "string",
                                                                },
                                                            },
                                                            CloneProtocol = "string",
                                                            Filters = new[]
                                                            {
                                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderFilterArgs
                                                                {
                                                                    BranchMatch = "string",
                                                                    LabelMatch = "string",
                                                                    PathsDoNotExists = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    PathsExists = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    RepositoryMatch = "string",
                                                                },
                                                            },
                                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGiteaArgs
                                                            {
                                                                Owner = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                Insecure = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGiteaTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGithubArgs
                                                            {
                                                                Organization = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                AppSecretName = "string",
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGithubTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGitlabArgs
                                                            {
                                                                Group = "string",
                                                                AllBranches = false,
                                                                Api = "string",
                                                                IncludeSubgroups = false,
                                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGitlabTokenRefArgs
                                                                {
                                                                    Key = "string",
                                                                    SecretName = "string",
                                                                },
                                                            },
                                                            RequeueAfterSeconds = "string",
                                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateArgs
                                                            {
                                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateMetadataArgs
                                                                {
                                                                    Annotations = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Finalizers = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Labels = 
                                                                    {
                                                                        { "string", "string" },
                                                                    },
                                                                    Name = "string",
                                                                    Namespace = "string",
                                                                },
                                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecArgs
                                                                {
                                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecDestinationArgs
                                                                    {
                                                                        Name = "string",
                                                                        Namespace = "string",
                                                                        Server = "string",
                                                                    },
                                                                    IgnoreDifferences = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs
                                                                        {
                                                                            Group = "string",
                                                                            JqPathExpressions = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            JsonPointers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Kind = "string",
                                                                            ManagedFieldsManagers = new[]
                                                                            {
                                                                                "string",
                                                                            },
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                        },
                                                                    },
                                                                    Infos = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecInfoArgs
                                                                        {
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Project = "string",
                                                                    RevisionHistoryLimit = 0,
                                                                    Sources = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceArgs
                                                                        {
                                                                            Chart = "string",
                                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryArgs
                                                                            {
                                                                                Exclude = "string",
                                                                                Include = "string",
                                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs
                                                                                {
                                                                                    ExtVars = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                    Libs = new[]
                                                                                    {
                                                                                        "string",
                                                                                    },
                                                                                    Tlas = new[]
                                                                                    {
                                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                                        {
                                                                                            Code = false,
                                                                                            Name = "string",
                                                                                            Value = "string",
                                                                                        },
                                                                                    },
                                                                                },
                                                                                Recurse = false,
                                                                            },
                                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmArgs
                                                                            {
                                                                                FileParameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                IgnoreMissingValueFiles = false,
                                                                                Parameters = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmParameterArgs
                                                                                    {
                                                                                        ForceString = false,
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                PassCredentials = false,
                                                                                ReleaseName = "string",
                                                                                SkipCrds = false,
                                                                                ValueFiles = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                Values = "string",
                                                                                Version = "string",
                                                                            },
                                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizeArgs
                                                                            {
                                                                                CommonAnnotations = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                CommonLabels = 
                                                                                {
                                                                                    { "string", "string" },
                                                                                },
                                                                                Images = new[]
                                                                                {
                                                                                    "string",
                                                                                },
                                                                                NamePrefix = "string",
                                                                                NameSuffix = "string",
                                                                                Patches = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs
                                                                                    {
                                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs
                                                                                        {
                                                                                            AnnotationSelector = "string",
                                                                                            Group = "string",
                                                                                            Kind = "string",
                                                                                            LabelSelector = "string",
                                                                                            Name = "string",
                                                                                            Namespace = "string",
                                                                                            Version = "string",
                                                                                        },
                                                                                        Options = 
                                                                                        {
                                                                                            { "string", false },
                                                                                        },
                                                                                        Patch = "string",
                                                                                        Path = "string",
                                                                                    },
                                                                                },
                                                                                Version = "string",
                                                                            },
                                                                            Path = "string",
                                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginArgs
                                                                            {
                                                                                Envs = new[]
                                                                                {
                                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginEnvArgs
                                                                                    {
                                                                                        Name = "string",
                                                                                        Value = "string",
                                                                                    },
                                                                                },
                                                                                Name = "string",
                                                                            },
                                                                            Ref = "string",
                                                                            RepoUrl = "string",
                                                                            TargetRevision = "string",
                                                                        },
                                                                    },
                                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyArgs
                                                                    {
                                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs
                                                                        {
                                                                            AllowEmpty = false,
                                                                            Prune = false,
                                                                            SelfHeal = false,
                                                                        },
                                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                                        {
                                                                            Annotations = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                            Labels = 
                                                                            {
                                                                                { "string", "string" },
                                                                            },
                                                                        },
                                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs
                                                                        {
                                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs
                                                                            {
                                                                                Duration = "string",
                                                                                Factor = "string",
                                                                                MaxDuration = "string",
                                                                            },
                                                                            Limit = "string",
                                                                        },
                                                                        SyncOptions = new[]
                                                                        {
                                                                            "string",
                                                                        },
                                                                    },
                                                                },
                                                            },
                                                        },
                                                    },
                                                    Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorSelectorArgs
                                                    {
                                                        MatchExpressions = new[]
                                                        {
                                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorSelectorMatchExpressionArgs
                                                            {
                                                                Key = "string",
                                                                Operator = "string",
                                                                Values = new[]
                                                                {
                                                                    "string",
                                                                },
                                                            },
                                                        },
                                                        MatchLabels = 
                                                        {
                                                            { "string", "string" },
                                                        },
                                                    },
                                                },
                                            },
                                            MergeKeys = new[]
                                            {
                                                "string",
                                            },
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    PullRequests = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestArgs
                                        {
                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestBitbucketServerArgs
                                            {
                                                Api = "string",
                                                Project = "string",
                                                Repo = "string",
                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthArgs
                                                {
                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs
                                                    {
                                                        Key = "string",
                                                        SecretName = "string",
                                                    },
                                                    Username = "string",
                                                },
                                            },
                                            Filters = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestFilterArgs
                                                {
                                                    BranchMatch = "string",
                                                },
                                            },
                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGiteaArgs
                                            {
                                                Api = "string",
                                                Owner = "string",
                                                Repo = "string",
                                                Insecure = false,
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGiteaTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGithubArgs
                                            {
                                                Owner = "string",
                                                Repo = "string",
                                                Api = "string",
                                                AppSecretName = "string",
                                                Labels = new[]
                                                {
                                                    "string",
                                                },
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGithubTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGitlabArgs
                                            {
                                                Project = "string",
                                                Api = "string",
                                                Labels = new[]
                                                {
                                                    "string",
                                                },
                                                PullRequestState = "string",
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGitlabTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            RequeueAfterSeconds = "string",
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    ScmProviders = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderArgs
                                        {
                                            AzureDevops = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderAzureDevopsArgs
                                            {
                                                Organization = "string",
                                                TeamProject = "string",
                                                AccessTokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderAzureDevopsAccessTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                                AllBranches = false,
                                                Api = "string",
                                            },
                                            BitbucketCloud = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderBitbucketCloudArgs
                                            {
                                                Owner = "string",
                                                User = "string",
                                                AllBranches = false,
                                                AppPasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderBitbucketCloudAppPasswordRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderBitbucketServerArgs
                                            {
                                                Api = "string",
                                                Project = "string",
                                                AllBranches = false,
                                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthArgs
                                                {
                                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs
                                                    {
                                                        Key = "string",
                                                        SecretName = "string",
                                                    },
                                                    Username = "string",
                                                },
                                            },
                                            CloneProtocol = "string",
                                            Filters = new[]
                                            {
                                                new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderFilterArgs
                                                {
                                                    BranchMatch = "string",
                                                    LabelMatch = "string",
                                                    PathsDoNotExists = new[]
                                                    {
                                                        "string",
                                                    },
                                                    PathsExists = new[]
                                                    {
                                                        "string",
                                                    },
                                                    RepositoryMatch = "string",
                                                },
                                            },
                                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGiteaArgs
                                            {
                                                Owner = "string",
                                                AllBranches = false,
                                                Api = "string",
                                                Insecure = false,
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGiteaTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGithubArgs
                                            {
                                                Organization = "string",
                                                AllBranches = false,
                                                Api = "string",
                                                AppSecretName = "string",
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGithubTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGitlabArgs
                                            {
                                                Group = "string",
                                                AllBranches = false,
                                                Api = "string",
                                                IncludeSubgroups = false,
                                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGitlabTokenRefArgs
                                                {
                                                    Key = "string",
                                                    SecretName = "string",
                                                },
                                            },
                                            RequeueAfterSeconds = "string",
                                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateArgs
                                            {
                                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateMetadataArgs
                                                {
                                                    Annotations = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Finalizers = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Labels = 
                                                    {
                                                        { "string", "string" },
                                                    },
                                                    Name = "string",
                                                    Namespace = "string",
                                                },
                                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecArgs
                                                {
                                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecDestinationArgs
                                                    {
                                                        Name = "string",
                                                        Namespace = "string",
                                                        Server = "string",
                                                    },
                                                    IgnoreDifferences = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs
                                                        {
                                                            Group = "string",
                                                            JqPathExpressions = new[]
                                                            {
                                                                "string",
                                                            },
                                                            JsonPointers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Kind = "string",
                                                            ManagedFieldsManagers = new[]
                                                            {
                                                                "string",
                                                            },
                                                            Name = "string",
                                                            Namespace = "string",
                                                        },
                                                    },
                                                    Infos = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecInfoArgs
                                                        {
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Project = "string",
                                                    RevisionHistoryLimit = 0,
                                                    Sources = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceArgs
                                                        {
                                                            Chart = "string",
                                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryArgs
                                                            {
                                                                Exclude = "string",
                                                                Include = "string",
                                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs
                                                                {
                                                                    ExtVars = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                    Libs = new[]
                                                                    {
                                                                        "string",
                                                                    },
                                                                    Tlas = new[]
                                                                    {
                                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                                        {
                                                                            Code = false,
                                                                            Name = "string",
                                                                            Value = "string",
                                                                        },
                                                                    },
                                                                },
                                                                Recurse = false,
                                                            },
                                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmArgs
                                                            {
                                                                FileParameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs
                                                                    {
                                                                        Name = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                IgnoreMissingValueFiles = false,
                                                                Parameters = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmParameterArgs
                                                                    {
                                                                        ForceString = false,
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                PassCredentials = false,
                                                                ReleaseName = "string",
                                                                SkipCrds = false,
                                                                ValueFiles = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                Values = "string",
                                                                Version = "string",
                                                            },
                                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizeArgs
                                                            {
                                                                CommonAnnotations = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                CommonLabels = 
                                                                {
                                                                    { "string", "string" },
                                                                },
                                                                Images = new[]
                                                                {
                                                                    "string",
                                                                },
                                                                NamePrefix = "string",
                                                                NameSuffix = "string",
                                                                Patches = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs
                                                                    {
                                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs
                                                                        {
                                                                            AnnotationSelector = "string",
                                                                            Group = "string",
                                                                            Kind = "string",
                                                                            LabelSelector = "string",
                                                                            Name = "string",
                                                                            Namespace = "string",
                                                                            Version = "string",
                                                                        },
                                                                        Options = 
                                                                        {
                                                                            { "string", false },
                                                                        },
                                                                        Patch = "string",
                                                                        Path = "string",
                                                                    },
                                                                },
                                                                Version = "string",
                                                            },
                                                            Path = "string",
                                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginArgs
                                                            {
                                                                Envs = new[]
                                                                {
                                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginEnvArgs
                                                                    {
                                                                        Name = "string",
                                                                        Value = "string",
                                                                    },
                                                                },
                                                                Name = "string",
                                                            },
                                                            Ref = "string",
                                                            RepoUrl = "string",
                                                            TargetRevision = "string",
                                                        },
                                                    },
                                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyArgs
                                                    {
                                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs
                                                        {
                                                            AllowEmpty = false,
                                                            Prune = false,
                                                            SelfHeal = false,
                                                        },
                                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                                        {
                                                            Annotations = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                            Labels = 
                                                            {
                                                                { "string", "string" },
                                                            },
                                                        },
                                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs
                                                        {
                                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs
                                                            {
                                                                Duration = "string",
                                                                Factor = "string",
                                                                MaxDuration = "string",
                                                            },
                                                            Limit = "string",
                                                        },
                                                        SyncOptions = new[]
                                                        {
                                                            "string",
                                                        },
                                                    },
                                                },
                                            },
                                        },
                                    },
                                    Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorSelectorArgs
                                    {
                                        MatchExpressions = new[]
                                        {
                                            new Argocd.Inputs.ApplicationSetSpecGeneratorMergeGeneratorSelectorMatchExpressionArgs
                                            {
                                                Key = "string",
                                                Operator = "string",
                                                Values = new[]
                                                {
                                                    "string",
                                                },
                                            },
                                        },
                                        MatchLabels = 
                                        {
                                            { "string", "string" },
                                        },
                                    },
                                },
                            },
                            MergeKeys = new[]
                            {
                                "string",
                            },
                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateArgs
                            {
                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateMetadataArgs
                                {
                                    Annotations = 
                                    {
                                        { "string", "string" },
                                    },
                                    Finalizers = new[]
                                    {
                                        "string",
                                    },
                                    Labels = 
                                    {
                                        { "string", "string" },
                                    },
                                    Name = "string",
                                    Namespace = "string",
                                },
                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecArgs
                                {
                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecDestinationArgs
                                    {
                                        Name = "string",
                                        Namespace = "string",
                                        Server = "string",
                                    },
                                    IgnoreDifferences = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecIgnoreDifferenceArgs
                                        {
                                            Group = "string",
                                            JqPathExpressions = new[]
                                            {
                                                "string",
                                            },
                                            JsonPointers = new[]
                                            {
                                                "string",
                                            },
                                            Kind = "string",
                                            ManagedFieldsManagers = new[]
                                            {
                                                "string",
                                            },
                                            Name = "string",
                                            Namespace = "string",
                                        },
                                    },
                                    Infos = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecInfoArgs
                                        {
                                            Name = "string",
                                            Value = "string",
                                        },
                                    },
                                    Project = "string",
                                    RevisionHistoryLimit = 0,
                                    Sources = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceArgs
                                        {
                                            Chart = "string",
                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceDirectoryArgs
                                            {
                                                Exclude = "string",
                                                Include = "string",
                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceDirectoryJsonnetArgs
                                                {
                                                    ExtVars = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Libs = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Tlas = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                },
                                                Recurse = false,
                                            },
                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceHelmArgs
                                            {
                                                FileParameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceHelmFileParameterArgs
                                                    {
                                                        Name = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                IgnoreMissingValueFiles = false,
                                                Parameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceHelmParameterArgs
                                                    {
                                                        ForceString = false,
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                PassCredentials = false,
                                                ReleaseName = "string",
                                                SkipCrds = false,
                                                ValueFiles = new[]
                                                {
                                                    "string",
                                                },
                                                Values = "string",
                                                Version = "string",
                                            },
                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceKustomizeArgs
                                            {
                                                CommonAnnotations = 
                                                {
                                                    { "string", "string" },
                                                },
                                                CommonLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                                Images = new[]
                                                {
                                                    "string",
                                                },
                                                NamePrefix = "string",
                                                NameSuffix = "string",
                                                Patches = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceKustomizePatchArgs
                                                    {
                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourceKustomizePatchTargetArgs
                                                        {
                                                            AnnotationSelector = "string",
                                                            Group = "string",
                                                            Kind = "string",
                                                            LabelSelector = "string",
                                                            Name = "string",
                                                            Namespace = "string",
                                                            Version = "string",
                                                        },
                                                        Options = 
                                                        {
                                                            { "string", false },
                                                        },
                                                        Patch = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                Version = "string",
                                            },
                                            Path = "string",
                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourcePluginArgs
                                            {
                                                Envs = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSourcePluginEnvArgs
                                                    {
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                Name = "string",
                                            },
                                            Ref = "string",
                                            RepoUrl = "string",
                                            TargetRevision = "string",
                                        },
                                    },
                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSyncPolicyArgs
                                    {
                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSyncPolicyAutomatedArgs
                                        {
                                            AllowEmpty = false,
                                            Prune = false,
                                            SelfHeal = false,
                                        },
                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                        {
                                            Annotations = 
                                            {
                                                { "string", "string" },
                                            },
                                            Labels = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSyncPolicyRetryArgs
                                        {
                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorMergeTemplateSpecSyncPolicyRetryBackoffArgs
                                            {
                                                Duration = "string",
                                                Factor = "string",
                                                MaxDuration = "string",
                                            },
                                            Limit = "string",
                                        },
                                        SyncOptions = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                            },
                        },
                    },
                    PullRequests = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestArgs
                        {
                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestBitbucketServerArgs
                            {
                                Api = "string",
                                Project = "string",
                                Repo = "string",
                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestBitbucketServerBasicAuthArgs
                                {
                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs
                                    {
                                        Key = "string",
                                        SecretName = "string",
                                    },
                                    Username = "string",
                                },
                            },
                            Filters = new[]
                            {
                                new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestFilterArgs
                                {
                                    BranchMatch = "string",
                                },
                            },
                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestGiteaArgs
                            {
                                Api = "string",
                                Owner = "string",
                                Repo = "string",
                                Insecure = false,
                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestGiteaTokenRefArgs
                                {
                                    Key = "string",
                                    SecretName = "string",
                                },
                            },
                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestGithubArgs
                            {
                                Owner = "string",
                                Repo = "string",
                                Api = "string",
                                AppSecretName = "string",
                                Labels = new[]
                                {
                                    "string",
                                },
                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestGithubTokenRefArgs
                                {
                                    Key = "string",
                                    SecretName = "string",
                                },
                            },
                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestGitlabArgs
                            {
                                Project = "string",
                                Api = "string",
                                Labels = new[]
                                {
                                    "string",
                                },
                                PullRequestState = "string",
                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestGitlabTokenRefArgs
                                {
                                    Key = "string",
                                    SecretName = "string",
                                },
                            },
                            RequeueAfterSeconds = "string",
                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateArgs
                            {
                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateMetadataArgs
                                {
                                    Annotations = 
                                    {
                                        { "string", "string" },
                                    },
                                    Finalizers = new[]
                                    {
                                        "string",
                                    },
                                    Labels = 
                                    {
                                        { "string", "string" },
                                    },
                                    Name = "string",
                                    Namespace = "string",
                                },
                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecArgs
                                {
                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecDestinationArgs
                                    {
                                        Name = "string",
                                        Namespace = "string",
                                        Server = "string",
                                    },
                                    IgnoreDifferences = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs
                                        {
                                            Group = "string",
                                            JqPathExpressions = new[]
                                            {
                                                "string",
                                            },
                                            JsonPointers = new[]
                                            {
                                                "string",
                                            },
                                            Kind = "string",
                                            ManagedFieldsManagers = new[]
                                            {
                                                "string",
                                            },
                                            Name = "string",
                                            Namespace = "string",
                                        },
                                    },
                                    Infos = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecInfoArgs
                                        {
                                            Name = "string",
                                            Value = "string",
                                        },
                                    },
                                    Project = "string",
                                    RevisionHistoryLimit = 0,
                                    Sources = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceArgs
                                        {
                                            Chart = "string",
                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceDirectoryArgs
                                            {
                                                Exclude = "string",
                                                Include = "string",
                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs
                                                {
                                                    ExtVars = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Libs = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Tlas = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                },
                                                Recurse = false,
                                            },
                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceHelmArgs
                                            {
                                                FileParameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs
                                                    {
                                                        Name = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                IgnoreMissingValueFiles = false,
                                                Parameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceHelmParameterArgs
                                                    {
                                                        ForceString = false,
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                PassCredentials = false,
                                                ReleaseName = "string",
                                                SkipCrds = false,
                                                ValueFiles = new[]
                                                {
                                                    "string",
                                                },
                                                Values = "string",
                                                Version = "string",
                                            },
                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceKustomizeArgs
                                            {
                                                CommonAnnotations = 
                                                {
                                                    { "string", "string" },
                                                },
                                                CommonLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                                Images = new[]
                                                {
                                                    "string",
                                                },
                                                NamePrefix = "string",
                                                NameSuffix = "string",
                                                Patches = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs
                                                    {
                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs
                                                        {
                                                            AnnotationSelector = "string",
                                                            Group = "string",
                                                            Kind = "string",
                                                            LabelSelector = "string",
                                                            Name = "string",
                                                            Namespace = "string",
                                                            Version = "string",
                                                        },
                                                        Options = 
                                                        {
                                                            { "string", false },
                                                        },
                                                        Patch = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                Version = "string",
                                            },
                                            Path = "string",
                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourcePluginArgs
                                            {
                                                Envs = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourcePluginEnvArgs
                                                    {
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                Name = "string",
                                            },
                                            Ref = "string",
                                            RepoUrl = "string",
                                            TargetRevision = "string",
                                        },
                                    },
                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSyncPolicyArgs
                                    {
                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs
                                        {
                                            AllowEmpty = false,
                                            Prune = false,
                                            SelfHeal = false,
                                        },
                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                        {
                                            Annotations = 
                                            {
                                                { "string", "string" },
                                            },
                                            Labels = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs
                                        {
                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs
                                            {
                                                Duration = "string",
                                                Factor = "string",
                                                MaxDuration = "string",
                                            },
                                            Limit = "string",
                                        },
                                        SyncOptions = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                            },
                        },
                    },
                    ScmProviders = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderArgs
                        {
                            AzureDevops = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderAzureDevopsArgs
                            {
                                Organization = "string",
                                TeamProject = "string",
                                AccessTokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderAzureDevopsAccessTokenRefArgs
                                {
                                    Key = "string",
                                    SecretName = "string",
                                },
                                AllBranches = false,
                                Api = "string",
                            },
                            BitbucketCloud = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderBitbucketCloudArgs
                            {
                                Owner = "string",
                                User = "string",
                                AllBranches = false,
                                AppPasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderBitbucketCloudAppPasswordRefArgs
                                {
                                    Key = "string",
                                    SecretName = "string",
                                },
                            },
                            BitbucketServer = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderBitbucketServerArgs
                            {
                                Api = "string",
                                Project = "string",
                                AllBranches = false,
                                BasicAuth = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderBitbucketServerBasicAuthArgs
                                {
                                    PasswordRef = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs
                                    {
                                        Key = "string",
                                        SecretName = "string",
                                    },
                                    Username = "string",
                                },
                            },
                            CloneProtocol = "string",
                            Filters = new[]
                            {
                                new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderFilterArgs
                                {
                                    BranchMatch = "string",
                                    LabelMatch = "string",
                                    PathsDoNotExists = new[]
                                    {
                                        "string",
                                    },
                                    PathsExists = new[]
                                    {
                                        "string",
                                    },
                                    RepositoryMatch = "string",
                                },
                            },
                            Gitea = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderGiteaArgs
                            {
                                Owner = "string",
                                AllBranches = false,
                                Api = "string",
                                Insecure = false,
                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderGiteaTokenRefArgs
                                {
                                    Key = "string",
                                    SecretName = "string",
                                },
                            },
                            Github = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderGithubArgs
                            {
                                Organization = "string",
                                AllBranches = false,
                                Api = "string",
                                AppSecretName = "string",
                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderGithubTokenRefArgs
                                {
                                    Key = "string",
                                    SecretName = "string",
                                },
                            },
                            Gitlab = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderGitlabArgs
                            {
                                Group = "string",
                                AllBranches = false,
                                Api = "string",
                                IncludeSubgroups = false,
                                TokenRef = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderGitlabTokenRefArgs
                                {
                                    Key = "string",
                                    SecretName = "string",
                                },
                            },
                            RequeueAfterSeconds = "string",
                            Template = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateArgs
                            {
                                Metadata = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateMetadataArgs
                                {
                                    Annotations = 
                                    {
                                        { "string", "string" },
                                    },
                                    Finalizers = new[]
                                    {
                                        "string",
                                    },
                                    Labels = 
                                    {
                                        { "string", "string" },
                                    },
                                    Name = "string",
                                    Namespace = "string",
                                },
                                Spec = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecArgs
                                {
                                    Destination = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecDestinationArgs
                                    {
                                        Name = "string",
                                        Namespace = "string",
                                        Server = "string",
                                    },
                                    IgnoreDifferences = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs
                                        {
                                            Group = "string",
                                            JqPathExpressions = new[]
                                            {
                                                "string",
                                            },
                                            JsonPointers = new[]
                                            {
                                                "string",
                                            },
                                            Kind = "string",
                                            ManagedFieldsManagers = new[]
                                            {
                                                "string",
                                            },
                                            Name = "string",
                                            Namespace = "string",
                                        },
                                    },
                                    Infos = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecInfoArgs
                                        {
                                            Name = "string",
                                            Value = "string",
                                        },
                                    },
                                    Project = "string",
                                    RevisionHistoryLimit = 0,
                                    Sources = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceArgs
                                        {
                                            Chart = "string",
                                            Directory = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceDirectoryArgs
                                            {
                                                Exclude = "string",
                                                Include = "string",
                                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs
                                                {
                                                    ExtVars = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                    Libs = new[]
                                                    {
                                                        "string",
                                                    },
                                                    Tlas = new[]
                                                    {
                                                        new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs
                                                        {
                                                            Code = false,
                                                            Name = "string",
                                                            Value = "string",
                                                        },
                                                    },
                                                },
                                                Recurse = false,
                                            },
                                            Helm = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceHelmArgs
                                            {
                                                FileParameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs
                                                    {
                                                        Name = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                IgnoreMissingValueFiles = false,
                                                Parameters = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceHelmParameterArgs
                                                    {
                                                        ForceString = false,
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                PassCredentials = false,
                                                ReleaseName = "string",
                                                SkipCrds = false,
                                                ValueFiles = new[]
                                                {
                                                    "string",
                                                },
                                                Values = "string",
                                                Version = "string",
                                            },
                                            Kustomize = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceKustomizeArgs
                                            {
                                                CommonAnnotations = 
                                                {
                                                    { "string", "string" },
                                                },
                                                CommonLabels = 
                                                {
                                                    { "string", "string" },
                                                },
                                                Images = new[]
                                                {
                                                    "string",
                                                },
                                                NamePrefix = "string",
                                                NameSuffix = "string",
                                                Patches = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs
                                                    {
                                                        Target = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs
                                                        {
                                                            AnnotationSelector = "string",
                                                            Group = "string",
                                                            Kind = "string",
                                                            LabelSelector = "string",
                                                            Name = "string",
                                                            Namespace = "string",
                                                            Version = "string",
                                                        },
                                                        Options = 
                                                        {
                                                            { "string", false },
                                                        },
                                                        Patch = "string",
                                                        Path = "string",
                                                    },
                                                },
                                                Version = "string",
                                            },
                                            Path = "string",
                                            Plugin = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourcePluginArgs
                                            {
                                                Envs = new[]
                                                {
                                                    new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourcePluginEnvArgs
                                                    {
                                                        Name = "string",
                                                        Value = "string",
                                                    },
                                                },
                                                Name = "string",
                                            },
                                            Ref = "string",
                                            RepoUrl = "string",
                                            TargetRevision = "string",
                                        },
                                    },
                                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSyncPolicyArgs
                                    {
                                        Automated = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs
                                        {
                                            AllowEmpty = false,
                                            Prune = false,
                                            SelfHeal = false,
                                        },
                                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                                        {
                                            Annotations = 
                                            {
                                                { "string", "string" },
                                            },
                                            Labels = 
                                            {
                                                { "string", "string" },
                                            },
                                        },
                                        Retry = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs
                                        {
                                            Backoff = new Argocd.Inputs.ApplicationSetSpecGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs
                                            {
                                                Duration = "string",
                                                Factor = "string",
                                                MaxDuration = "string",
                                            },
                                            Limit = "string",
                                        },
                                        SyncOptions = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                            },
                        },
                    },
                    Selector = new Argocd.Inputs.ApplicationSetSpecGeneratorSelectorArgs
                    {
                        MatchExpressions = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecGeneratorSelectorMatchExpressionArgs
                            {
                                Key = "string",
                                Operator = "string",
                                Values = new[]
                                {
                                    "string",
                                },
                            },
                        },
                        MatchLabels = 
                        {
                            { "string", "string" },
                        },
                    },
                },
            },
            Template = new Argocd.Inputs.ApplicationSetSpecTemplateArgs
            {
                Metadata = new Argocd.Inputs.ApplicationSetSpecTemplateMetadataArgs
                {
                    Name = "string",
                    Annotations = 
                    {
                        { "string", "string" },
                    },
                    Finalizers = new[]
                    {
                        "string",
                    },
                    Labels = 
                    {
                        { "string", "string" },
                    },
                    Namespace = "string",
                },
                Spec = new Argocd.Inputs.ApplicationSetSpecTemplateSpecArgs
                {
                    Destination = new Argocd.Inputs.ApplicationSetSpecTemplateSpecDestinationArgs
                    {
                        Name = "string",
                        Namespace = "string",
                        Server = "string",
                    },
                    Sources = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceArgs
                        {
                            RepoUrl = "string",
                            Chart = "string",
                            Directory = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceDirectoryArgs
                            {
                                Exclude = "string",
                                Include = "string",
                                Jsonnet = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceDirectoryJsonnetArgs
                                {
                                    ExtVars = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceDirectoryJsonnetExtVarArgs
                                        {
                                            Code = false,
                                            Name = "string",
                                            Value = "string",
                                        },
                                    },
                                    Libs = new[]
                                    {
                                        "string",
                                    },
                                    Tlas = new[]
                                    {
                                        new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceDirectoryJsonnetTlaArgs
                                        {
                                            Code = false,
                                            Name = "string",
                                            Value = "string",
                                        },
                                    },
                                },
                                Recurse = false,
                            },
                            Helm = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceHelmArgs
                            {
                                FileParameters = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceHelmFileParameterArgs
                                    {
                                        Name = "string",
                                        Path = "string",
                                    },
                                },
                                IgnoreMissingValueFiles = false,
                                Parameters = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceHelmParameterArgs
                                    {
                                        ForceString = false,
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                                PassCredentials = false,
                                ReleaseName = "string",
                                SkipCrds = false,
                                ValueFiles = new[]
                                {
                                    "string",
                                },
                                Values = "string",
                                Version = "string",
                            },
                            Kustomize = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceKustomizeArgs
                            {
                                CommonAnnotations = 
                                {
                                    { "string", "string" },
                                },
                                CommonLabels = 
                                {
                                    { "string", "string" },
                                },
                                Images = new[]
                                {
                                    "string",
                                },
                                NamePrefix = "string",
                                NameSuffix = "string",
                                Patches = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceKustomizePatchArgs
                                    {
                                        Target = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourceKustomizePatchTargetArgs
                                        {
                                            AnnotationSelector = "string",
                                            Group = "string",
                                            Kind = "string",
                                            LabelSelector = "string",
                                            Name = "string",
                                            Namespace = "string",
                                            Version = "string",
                                        },
                                        Options = 
                                        {
                                            { "string", false },
                                        },
                                        Patch = "string",
                                        Path = "string",
                                    },
                                },
                                Version = "string",
                            },
                            Path = "string",
                            Plugin = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourcePluginArgs
                            {
                                Envs = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecTemplateSpecSourcePluginEnvArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                                Name = "string",
                            },
                            Ref = "string",
                            TargetRevision = "string",
                        },
                    },
                    IgnoreDifferences = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecTemplateSpecIgnoreDifferenceArgs
                        {
                            Group = "string",
                            JqPathExpressions = new[]
                            {
                                "string",
                            },
                            JsonPointers = new[]
                            {
                                "string",
                            },
                            Kind = "string",
                            ManagedFieldsManagers = new[]
                            {
                                "string",
                            },
                            Name = "string",
                            Namespace = "string",
                        },
                    },
                    Infos = new[]
                    {
                        new Argocd.Inputs.ApplicationSetSpecTemplateSpecInfoArgs
                        {
                            Name = "string",
                            Value = "string",
                        },
                    },
                    Project = "string",
                    RevisionHistoryLimit = 0,
                    SyncPolicy = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSyncPolicyArgs
                    {
                        Automated = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSyncPolicyAutomatedArgs
                        {
                            AllowEmpty = false,
                            Prune = false,
                            SelfHeal = false,
                        },
                        ManagedNamespaceMetadata = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSyncPolicyManagedNamespaceMetadataArgs
                        {
                            Annotations = 
                            {
                                { "string", "string" },
                            },
                            Labels = 
                            {
                                { "string", "string" },
                            },
                        },
                        Retry = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSyncPolicyRetryArgs
                        {
                            Backoff = new Argocd.Inputs.ApplicationSetSpecTemplateSpecSyncPolicyRetryBackoffArgs
                            {
                                Duration = "string",
                                Factor = "string",
                                MaxDuration = "string",
                            },
                            Limit = "string",
                        },
                        SyncOptions = new[]
                        {
                            "string",
                        },
                    },
                },
            },
            GoTemplate = false,
            GoTemplateOptions = new[]
            {
                "string",
            },
            IgnoreApplicationDifferences = new[]
            {
                new Argocd.Inputs.ApplicationSetSpecIgnoreApplicationDifferenceArgs
                {
                    JqPathExpressions = new[]
                    {
                        "string",
                    },
                    JsonPointers = new[]
                    {
                        "string",
                    },
                    Name = "string",
                },
            },
            Strategy = new Argocd.Inputs.ApplicationSetSpecStrategyArgs
            {
                Type = "string",
                RollingSyncs = new[]
                {
                    new Argocd.Inputs.ApplicationSetSpecStrategyRollingSyncArgs
                    {
                        Steps = new[]
                        {
                            new Argocd.Inputs.ApplicationSetSpecStrategyRollingSyncStepArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Argocd.Inputs.ApplicationSetSpecStrategyRollingSyncStepMatchExpressionArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MaxUpdate = "string",
                            },
                        },
                    },
                },
            },
            SyncPolicy = new Argocd.Inputs.ApplicationSetSpecSyncPolicyArgs
            {
                ApplicationsSync = "string",
                PreserveResourcesOnDeletion = false,
            },
            TemplatePatch = "string",
        },
    });
    
    example, err := argocd.NewApplicationSet(ctx, "applicationSetResource", &argocd.ApplicationSetArgs{
    	Metadata: &argocd.ApplicationSetMetadataArgs{
    		Annotations: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		Generation: pulumi.Int(0),
    		Labels: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		Name:            pulumi.String("string"),
    		Namespace:       pulumi.String("string"),
    		ResourceVersion: pulumi.String("string"),
    		Uid:             pulumi.String("string"),
    	},
    	Spec: &argocd.ApplicationSetSpecArgs{
    		Generators: argocd.ApplicationSetSpecGeneratorArray{
    			&argocd.ApplicationSetSpecGeneratorArgs{
    				ClusterDecisionResources: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceArray{
    					&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceArgs{
    						ConfigMapRef: pulumi.String("string"),
    						LabelSelector: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceLabelSelectorArgs{
    							MatchExpressions: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArray{
    								&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs{
    									Key:      pulumi.String("string"),
    									Operator: pulumi.String("string"),
    									Values: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							MatchLabels: pulumi.StringMap{
    								"string": pulumi.String("string"),
    							},
    						},
    						Name:                pulumi.String("string"),
    						RequeueAfterSeconds: pulumi.String("string"),
    						Template: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateArgs{
    							Metadata: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateMetadataArgs{
    								Annotations: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Finalizers: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								Labels: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Name:      pulumi.String("string"),
    								Namespace: pulumi.String("string"),
    							},
    							Spec: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecArgs{
    								Destination: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecDestinationArgs{
    									Name:      pulumi.String("string"),
    									Namespace: pulumi.String("string"),
    									Server:    pulumi.String("string"),
    								},
    								IgnoreDifferences: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArray{
    									&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs{
    										Group: pulumi.String("string"),
    										JqPathExpressions: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										JsonPointers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Kind: pulumi.String("string"),
    										ManagedFieldsManagers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Name:      pulumi.String("string"),
    										Namespace: pulumi.String("string"),
    									},
    								},
    								Infos: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecInfoArray{
    									&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecInfoArgs{
    										Name:  pulumi.String("string"),
    										Value: pulumi.String("string"),
    									},
    								},
    								Project:              pulumi.String("string"),
    								RevisionHistoryLimit: pulumi.Int(0),
    								Sources: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceArray{
    									&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceArgs{
    										Chart: pulumi.String("string"),
    										Directory: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs{
    											Exclude: pulumi.String("string"),
    											Include: pulumi.String("string"),
    											Jsonnet: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs{
    												ExtVars: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArray{
    													&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Libs: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Tlas: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArray{
    													&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    											},
    											Recurse: pulumi.Bool(false),
    										},
    										Helm: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs{
    											FileParameters: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArray{
    												&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs{
    													Name: pulumi.String("string"),
    													Path: pulumi.String("string"),
    												},
    											},
    											IgnoreMissingValueFiles: pulumi.Bool(false),
    											Parameters: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArray{
    												&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs{
    													ForceString: pulumi.Bool(false),
    													Name:        pulumi.String("string"),
    													Value:       pulumi.String("string"),
    												},
    											},
    											PassCredentials: pulumi.Bool(false),
    											ReleaseName:     pulumi.String("string"),
    											SkipCrds:        pulumi.Bool(false),
    											ValueFiles: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											Values:  pulumi.String("string"),
    											Version: pulumi.String("string"),
    										},
    										Kustomize: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs{
    											CommonAnnotations: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											CommonLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											Images: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											NamePrefix: pulumi.String("string"),
    											NameSuffix: pulumi.String("string"),
    											Patches: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArray{
    												&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs{
    													Target: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs{
    														AnnotationSelector: pulumi.String("string"),
    														Group:              pulumi.String("string"),
    														Kind:               pulumi.String("string"),
    														LabelSelector:      pulumi.String("string"),
    														Name:               pulumi.String("string"),
    														Namespace:          pulumi.String("string"),
    														Version:            pulumi.String("string"),
    													},
    													Options: pulumi.BoolMap{
    														"string": pulumi.Bool(false),
    													},
    													Patch: pulumi.String("string"),
    													Path:  pulumi.String("string"),
    												},
    											},
    											Version: pulumi.String("string"),
    										},
    										Path: pulumi.String("string"),
    										Plugin: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs{
    											Envs: argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArray{
    												&argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs{
    													Name:  pulumi.String("string"),
    													Value: pulumi.String("string"),
    												},
    											},
    											Name: pulumi.String("string"),
    										},
    										Ref:            pulumi.String("string"),
    										RepoUrl:        pulumi.String("string"),
    										TargetRevision: pulumi.String("string"),
    									},
    								},
    								SyncPolicy: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs{
    									Automated: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs{
    										AllowEmpty: pulumi.Bool(false),
    										Prune:      pulumi.Bool(false),
    										SelfHeal:   pulumi.Bool(false),
    									},
    									ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    										Annotations: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    										Labels: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    									Retry: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs{
    										Backoff: &argocd.ApplicationSetSpecGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs{
    											Duration:    pulumi.String("string"),
    											Factor:      pulumi.String("string"),
    											MaxDuration: pulumi.String("string"),
    										},
    										Limit: pulumi.String("string"),
    									},
    									SyncOptions: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    						},
    						Values: pulumi.StringMap{
    							"string": pulumi.String("string"),
    						},
    					},
    				},
    				Clusters: argocd.ApplicationSetSpecGeneratorClusterArray{
    					&argocd.ApplicationSetSpecGeneratorClusterArgs{
    						Enabled: pulumi.Bool(false),
    						Selector: &argocd.ApplicationSetSpecGeneratorClusterSelectorArgs{
    							MatchExpressions: argocd.ApplicationSetSpecGeneratorClusterSelectorMatchExpressionArray{
    								&argocd.ApplicationSetSpecGeneratorClusterSelectorMatchExpressionArgs{
    									Key:      pulumi.String("string"),
    									Operator: pulumi.String("string"),
    									Values: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							MatchLabels: pulumi.StringMap{
    								"string": pulumi.String("string"),
    							},
    						},
    						Template: &argocd.ApplicationSetSpecGeneratorClusterTemplateArgs{
    							Metadata: &argocd.ApplicationSetSpecGeneratorClusterTemplateMetadataArgs{
    								Annotations: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Finalizers: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								Labels: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Name:      pulumi.String("string"),
    								Namespace: pulumi.String("string"),
    							},
    							Spec: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecArgs{
    								Destination: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecDestinationArgs{
    									Name:      pulumi.String("string"),
    									Namespace: pulumi.String("string"),
    									Server:    pulumi.String("string"),
    								},
    								IgnoreDifferences: argocd.ApplicationSetSpecGeneratorClusterTemplateSpecIgnoreDifferenceArray{
    									&argocd.ApplicationSetSpecGeneratorClusterTemplateSpecIgnoreDifferenceArgs{
    										Group: pulumi.String("string"),
    										JqPathExpressions: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										JsonPointers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Kind: pulumi.String("string"),
    										ManagedFieldsManagers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Name:      pulumi.String("string"),
    										Namespace: pulumi.String("string"),
    									},
    								},
    								Infos: argocd.ApplicationSetSpecGeneratorClusterTemplateSpecInfoArray{
    									&argocd.ApplicationSetSpecGeneratorClusterTemplateSpecInfoArgs{
    										Name:  pulumi.String("string"),
    										Value: pulumi.String("string"),
    									},
    								},
    								Project:              pulumi.String("string"),
    								RevisionHistoryLimit: pulumi.Int(0),
    								Sources: argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceArray{
    									&argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceArgs{
    										Chart: pulumi.String("string"),
    										Directory: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceDirectoryArgs{
    											Exclude: pulumi.String("string"),
    											Include: pulumi.String("string"),
    											Jsonnet: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs{
    												ExtVars: argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArray{
    													&argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Libs: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Tlas: argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArray{
    													&argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    											},
    											Recurse: pulumi.Bool(false),
    										},
    										Helm: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceHelmArgs{
    											FileParameters: argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceHelmFileParameterArray{
    												&argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceHelmFileParameterArgs{
    													Name: pulumi.String("string"),
    													Path: pulumi.String("string"),
    												},
    											},
    											IgnoreMissingValueFiles: pulumi.Bool(false),
    											Parameters: argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceHelmParameterArray{
    												&argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceHelmParameterArgs{
    													ForceString: pulumi.Bool(false),
    													Name:        pulumi.String("string"),
    													Value:       pulumi.String("string"),
    												},
    											},
    											PassCredentials: pulumi.Bool(false),
    											ReleaseName:     pulumi.String("string"),
    											SkipCrds:        pulumi.Bool(false),
    											ValueFiles: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											Values:  pulumi.String("string"),
    											Version: pulumi.String("string"),
    										},
    										Kustomize: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceKustomizeArgs{
    											CommonAnnotations: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											CommonLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											Images: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											NamePrefix: pulumi.String("string"),
    											NameSuffix: pulumi.String("string"),
    											Patches: argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceKustomizePatchArray{
    												&argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceKustomizePatchArgs{
    													Target: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs{
    														AnnotationSelector: pulumi.String("string"),
    														Group:              pulumi.String("string"),
    														Kind:               pulumi.String("string"),
    														LabelSelector:      pulumi.String("string"),
    														Name:               pulumi.String("string"),
    														Namespace:          pulumi.String("string"),
    														Version:            pulumi.String("string"),
    													},
    													Options: pulumi.BoolMap{
    														"string": pulumi.Bool(false),
    													},
    													Patch: pulumi.String("string"),
    													Path:  pulumi.String("string"),
    												},
    											},
    											Version: pulumi.String("string"),
    										},
    										Path: pulumi.String("string"),
    										Plugin: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourcePluginArgs{
    											Envs: argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourcePluginEnvArray{
    												&argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSourcePluginEnvArgs{
    													Name:  pulumi.String("string"),
    													Value: pulumi.String("string"),
    												},
    											},
    											Name: pulumi.String("string"),
    										},
    										Ref:            pulumi.String("string"),
    										RepoUrl:        pulumi.String("string"),
    										TargetRevision: pulumi.String("string"),
    									},
    								},
    								SyncPolicy: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSyncPolicyArgs{
    									Automated: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs{
    										AllowEmpty: pulumi.Bool(false),
    										Prune:      pulumi.Bool(false),
    										SelfHeal:   pulumi.Bool(false),
    									},
    									ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    										Annotations: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    										Labels: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    									Retry: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSyncPolicyRetryArgs{
    										Backoff: &argocd.ApplicationSetSpecGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs{
    											Duration:    pulumi.String("string"),
    											Factor:      pulumi.String("string"),
    											MaxDuration: pulumi.String("string"),
    										},
    										Limit: pulumi.String("string"),
    									},
    									SyncOptions: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    						},
    						Values: pulumi.StringMap{
    							"string": pulumi.String("string"),
    						},
    					},
    				},
    				Gits: argocd.ApplicationSetSpecGeneratorGitArray{
    					&argocd.ApplicationSetSpecGeneratorGitArgs{
    						RepoUrl: pulumi.String("string"),
    						Directories: argocd.ApplicationSetSpecGeneratorGitDirectoryArray{
    							&argocd.ApplicationSetSpecGeneratorGitDirectoryArgs{
    								Path:    pulumi.String("string"),
    								Exclude: pulumi.Bool(false),
    							},
    						},
    						Files: argocd.ApplicationSetSpecGeneratorGitFileArray{
    							&argocd.ApplicationSetSpecGeneratorGitFileArgs{
    								Path: pulumi.String("string"),
    							},
    						},
    						PathParamPrefix: pulumi.String("string"),
    						Revision:        pulumi.String("string"),
    						Template: &argocd.ApplicationSetSpecGeneratorGitTemplateArgs{
    							Metadata: &argocd.ApplicationSetSpecGeneratorGitTemplateMetadataArgs{
    								Annotations: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Finalizers: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								Labels: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Name:      pulumi.String("string"),
    								Namespace: pulumi.String("string"),
    							},
    							Spec: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecArgs{
    								Destination: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecDestinationArgs{
    									Name:      pulumi.String("string"),
    									Namespace: pulumi.String("string"),
    									Server:    pulumi.String("string"),
    								},
    								IgnoreDifferences: argocd.ApplicationSetSpecGeneratorGitTemplateSpecIgnoreDifferenceArray{
    									&argocd.ApplicationSetSpecGeneratorGitTemplateSpecIgnoreDifferenceArgs{
    										Group: pulumi.String("string"),
    										JqPathExpressions: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										JsonPointers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Kind: pulumi.String("string"),
    										ManagedFieldsManagers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Name:      pulumi.String("string"),
    										Namespace: pulumi.String("string"),
    									},
    								},
    								Infos: argocd.ApplicationSetSpecGeneratorGitTemplateSpecInfoArray{
    									&argocd.ApplicationSetSpecGeneratorGitTemplateSpecInfoArgs{
    										Name:  pulumi.String("string"),
    										Value: pulumi.String("string"),
    									},
    								},
    								Project:              pulumi.String("string"),
    								RevisionHistoryLimit: pulumi.Int(0),
    								Sources: argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceArray{
    									&argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceArgs{
    										Chart: pulumi.String("string"),
    										Directory: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceDirectoryArgs{
    											Exclude: pulumi.String("string"),
    											Include: pulumi.String("string"),
    											Jsonnet: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs{
    												ExtVars: argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArray{
    													&argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Libs: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Tlas: argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArray{
    													&argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    											},
    											Recurse: pulumi.Bool(false),
    										},
    										Helm: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceHelmArgs{
    											FileParameters: argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceHelmFileParameterArray{
    												&argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceHelmFileParameterArgs{
    													Name: pulumi.String("string"),
    													Path: pulumi.String("string"),
    												},
    											},
    											IgnoreMissingValueFiles: pulumi.Bool(false),
    											Parameters: argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceHelmParameterArray{
    												&argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceHelmParameterArgs{
    													ForceString: pulumi.Bool(false),
    													Name:        pulumi.String("string"),
    													Value:       pulumi.String("string"),
    												},
    											},
    											PassCredentials: pulumi.Bool(false),
    											ReleaseName:     pulumi.String("string"),
    											SkipCrds:        pulumi.Bool(false),
    											ValueFiles: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											Values:  pulumi.String("string"),
    											Version: pulumi.String("string"),
    										},
    										Kustomize: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceKustomizeArgs{
    											CommonAnnotations: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											CommonLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											Images: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											NamePrefix: pulumi.String("string"),
    											NameSuffix: pulumi.String("string"),
    											Patches: argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceKustomizePatchArray{
    												&argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceKustomizePatchArgs{
    													Target: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs{
    														AnnotationSelector: pulumi.String("string"),
    														Group:              pulumi.String("string"),
    														Kind:               pulumi.String("string"),
    														LabelSelector:      pulumi.String("string"),
    														Name:               pulumi.String("string"),
    														Namespace:          pulumi.String("string"),
    														Version:            pulumi.String("string"),
    													},
    													Options: pulumi.BoolMap{
    														"string": pulumi.Bool(false),
    													},
    													Patch: pulumi.String("string"),
    													Path:  pulumi.String("string"),
    												},
    											},
    											Version: pulumi.String("string"),
    										},
    										Path: pulumi.String("string"),
    										Plugin: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourcePluginArgs{
    											Envs: argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourcePluginEnvArray{
    												&argocd.ApplicationSetSpecGeneratorGitTemplateSpecSourcePluginEnvArgs{
    													Name:  pulumi.String("string"),
    													Value: pulumi.String("string"),
    												},
    											},
    											Name: pulumi.String("string"),
    										},
    										Ref:            pulumi.String("string"),
    										RepoUrl:        pulumi.String("string"),
    										TargetRevision: pulumi.String("string"),
    									},
    								},
    								SyncPolicy: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSyncPolicyArgs{
    									Automated: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSyncPolicyAutomatedArgs{
    										AllowEmpty: pulumi.Bool(false),
    										Prune:      pulumi.Bool(false),
    										SelfHeal:   pulumi.Bool(false),
    									},
    									ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    										Annotations: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    										Labels: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    									Retry: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSyncPolicyRetryArgs{
    										Backoff: &argocd.ApplicationSetSpecGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs{
    											Duration:    pulumi.String("string"),
    											Factor:      pulumi.String("string"),
    											MaxDuration: pulumi.String("string"),
    										},
    										Limit: pulumi.String("string"),
    									},
    									SyncOptions: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    						},
    						Values: pulumi.StringMap{
    							"string": pulumi.String("string"),
    						},
    					},
    				},
    				Lists: argocd.ApplicationSetSpecGeneratorListArray{
    					&argocd.ApplicationSetSpecGeneratorListArgs{
    						Elements: pulumi.StringMapArray{
    							pulumi.StringMap{
    								"string": pulumi.String("string"),
    							},
    						},
    						Template: &argocd.ApplicationSetSpecGeneratorListTemplateArgs{
    							Metadata: &argocd.ApplicationSetSpecGeneratorListTemplateMetadataArgs{
    								Annotations: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Finalizers: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								Labels: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Name:      pulumi.String("string"),
    								Namespace: pulumi.String("string"),
    							},
    							Spec: &argocd.ApplicationSetSpecGeneratorListTemplateSpecArgs{
    								Destination: &argocd.ApplicationSetSpecGeneratorListTemplateSpecDestinationArgs{
    									Name:      pulumi.String("string"),
    									Namespace: pulumi.String("string"),
    									Server:    pulumi.String("string"),
    								},
    								IgnoreDifferences: argocd.ApplicationSetSpecGeneratorListTemplateSpecIgnoreDifferenceArray{
    									&argocd.ApplicationSetSpecGeneratorListTemplateSpecIgnoreDifferenceArgs{
    										Group: pulumi.String("string"),
    										JqPathExpressions: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										JsonPointers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Kind: pulumi.String("string"),
    										ManagedFieldsManagers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Name:      pulumi.String("string"),
    										Namespace: pulumi.String("string"),
    									},
    								},
    								Infos: argocd.ApplicationSetSpecGeneratorListTemplateSpecInfoArray{
    									&argocd.ApplicationSetSpecGeneratorListTemplateSpecInfoArgs{
    										Name:  pulumi.String("string"),
    										Value: pulumi.String("string"),
    									},
    								},
    								Project:              pulumi.String("string"),
    								RevisionHistoryLimit: pulumi.Int(0),
    								Sources: argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceArray{
    									&argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceArgs{
    										Chart: pulumi.String("string"),
    										Directory: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceDirectoryArgs{
    											Exclude: pulumi.String("string"),
    											Include: pulumi.String("string"),
    											Jsonnet: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceDirectoryJsonnetArgs{
    												ExtVars: argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArray{
    													&argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Libs: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Tlas: argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArray{
    													&argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    											},
    											Recurse: pulumi.Bool(false),
    										},
    										Helm: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceHelmArgs{
    											FileParameters: argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceHelmFileParameterArray{
    												&argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceHelmFileParameterArgs{
    													Name: pulumi.String("string"),
    													Path: pulumi.String("string"),
    												},
    											},
    											IgnoreMissingValueFiles: pulumi.Bool(false),
    											Parameters: argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceHelmParameterArray{
    												&argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceHelmParameterArgs{
    													ForceString: pulumi.Bool(false),
    													Name:        pulumi.String("string"),
    													Value:       pulumi.String("string"),
    												},
    											},
    											PassCredentials: pulumi.Bool(false),
    											ReleaseName:     pulumi.String("string"),
    											SkipCrds:        pulumi.Bool(false),
    											ValueFiles: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											Values:  pulumi.String("string"),
    											Version: pulumi.String("string"),
    										},
    										Kustomize: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceKustomizeArgs{
    											CommonAnnotations: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											CommonLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											Images: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											NamePrefix: pulumi.String("string"),
    											NameSuffix: pulumi.String("string"),
    											Patches: argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceKustomizePatchArray{
    												&argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceKustomizePatchArgs{
    													Target: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSourceKustomizePatchTargetArgs{
    														AnnotationSelector: pulumi.String("string"),
    														Group:              pulumi.String("string"),
    														Kind:               pulumi.String("string"),
    														LabelSelector:      pulumi.String("string"),
    														Name:               pulumi.String("string"),
    														Namespace:          pulumi.String("string"),
    														Version:            pulumi.String("string"),
    													},
    													Options: pulumi.BoolMap{
    														"string": pulumi.Bool(false),
    													},
    													Patch: pulumi.String("string"),
    													Path:  pulumi.String("string"),
    												},
    											},
    											Version: pulumi.String("string"),
    										},
    										Path: pulumi.String("string"),
    										Plugin: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSourcePluginArgs{
    											Envs: argocd.ApplicationSetSpecGeneratorListTemplateSpecSourcePluginEnvArray{
    												&argocd.ApplicationSetSpecGeneratorListTemplateSpecSourcePluginEnvArgs{
    													Name:  pulumi.String("string"),
    													Value: pulumi.String("string"),
    												},
    											},
    											Name: pulumi.String("string"),
    										},
    										Ref:            pulumi.String("string"),
    										RepoUrl:        pulumi.String("string"),
    										TargetRevision: pulumi.String("string"),
    									},
    								},
    								SyncPolicy: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSyncPolicyArgs{
    									Automated: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSyncPolicyAutomatedArgs{
    										AllowEmpty: pulumi.Bool(false),
    										Prune:      pulumi.Bool(false),
    										SelfHeal:   pulumi.Bool(false),
    									},
    									ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    										Annotations: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    										Labels: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    									Retry: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSyncPolicyRetryArgs{
    										Backoff: &argocd.ApplicationSetSpecGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs{
    											Duration:    pulumi.String("string"),
    											Factor:      pulumi.String("string"),
    											MaxDuration: pulumi.String("string"),
    										},
    										Limit: pulumi.String("string"),
    									},
    									SyncOptions: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    						},
    					},
    				},
    				Matrices: argocd.ApplicationSetSpecGeneratorMatrixArray{
    					&argocd.ApplicationSetSpecGeneratorMatrixArgs{
    						Generators: argocd.ApplicationSetSpecGeneratorMatrixGeneratorArray{
    							&argocd.ApplicationSetSpecGeneratorMatrixGeneratorArgs{
    								ClusterDecisionResources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceArgs{
    										ConfigMapRef: pulumi.String("string"),
    										LabelSelector: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorArgs{
    											MatchExpressions: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArray{
    												&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs{
    													Key:      pulumi.String("string"),
    													Operator: pulumi.String("string"),
    													Values: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    											MatchLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    										},
    										Name:                pulumi.String("string"),
    										RequeueAfterSeconds: pulumi.String("string"),
    										Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    										Values: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    								},
    								Clusters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterArgs{
    										Enabled: pulumi.Bool(false),
    										Selector: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterSelectorArgs{
    											MatchExpressions: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterSelectorMatchExpressionArray{
    												&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterSelectorMatchExpressionArgs{
    													Key:      pulumi.String("string"),
    													Operator: pulumi.String("string"),
    													Values: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    											MatchLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    										},
    										Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    										Values: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    								},
    								Gits: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitArgs{
    										RepoUrl: pulumi.String("string"),
    										Directories: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitDirectoryArray{
    											&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitDirectoryArgs{
    												Path:    pulumi.String("string"),
    												Exclude: pulumi.Bool(false),
    											},
    										},
    										Files: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitFileArray{
    											&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitFileArgs{
    												Path: pulumi.String("string"),
    											},
    										},
    										PathParamPrefix: pulumi.String("string"),
    										Revision:        pulumi.String("string"),
    										Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    										Values: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    								},
    								Lists: argocd.ApplicationSetSpecGeneratorMatrixGeneratorListArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixGeneratorListArgs{
    										Elements: pulumi.StringMapArray{
    											pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    										},
    										Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    									},
    								},
    								Matrices: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixArgs{
    										Generators: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorArray{
    											&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorArgs{
    												ClusterDecisionResources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceArgs{
    														ConfigMapRef: pulumi.String("string"),
    														LabelSelector: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorArgs{
    															MatchExpressions: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs{
    																	Key:      pulumi.String("string"),
    																	Operator: pulumi.String("string"),
    																	Values: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    															MatchLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Name:                pulumi.String("string"),
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Clusters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterArgs{
    														Enabled: pulumi.Bool(false),
    														Selector: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterSelectorArgs{
    															MatchExpressions: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterSelectorMatchExpressionArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterSelectorMatchExpressionArgs{
    																	Key:      pulumi.String("string"),
    																	Operator: pulumi.String("string"),
    																	Values: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    															MatchLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Gits: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitArgs{
    														RepoUrl: pulumi.String("string"),
    														Directories: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitDirectoryArray{
    															&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitDirectoryArgs{
    																Path:    pulumi.String("string"),
    																Exclude: pulumi.Bool(false),
    															},
    														},
    														Files: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitFileArray{
    															&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitFileArgs{
    																Path: pulumi.String("string"),
    															},
    														},
    														PathParamPrefix: pulumi.String("string"),
    														Revision:        pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Lists: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListArgs{
    														Elements: pulumi.StringMapArray{
    															pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												PullRequests: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestArgs{
    														BitbucketServer: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestBitbucketServerArgs{
    															Api:     pulumi.String("string"),
    															Project: pulumi.String("string"),
    															Repo:    pulumi.String("string"),
    															BasicAuth: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthArgs{
    																PasswordRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs{
    																	Key:        pulumi.String("string"),
    																	SecretName: pulumi.String("string"),
    																},
    																Username: pulumi.String("string"),
    															},
    														},
    														Filters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestFilterArray{
    															&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestFilterArgs{
    																BranchMatch: pulumi.String("string"),
    															},
    														},
    														Gitea: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGiteaArgs{
    															Api:      pulumi.String("string"),
    															Owner:    pulumi.String("string"),
    															Repo:     pulumi.String("string"),
    															Insecure: pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGiteaTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Github: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGithubArgs{
    															Owner:         pulumi.String("string"),
    															Repo:          pulumi.String("string"),
    															Api:           pulumi.String("string"),
    															AppSecretName: pulumi.String("string"),
    															Labels: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGithubTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Gitlab: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGitlabArgs{
    															Project: pulumi.String("string"),
    															Api:     pulumi.String("string"),
    															Labels: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															PullRequestState: pulumi.String("string"),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestGitlabTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												ScmProviders: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderArgs{
    														AzureDevops: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderAzureDevopsArgs{
    															Organization: pulumi.String("string"),
    															TeamProject:  pulumi.String("string"),
    															AccessTokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderAzureDevopsAccessTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    															AllBranches: pulumi.Bool(false),
    															Api:         pulumi.String("string"),
    														},
    														BitbucketCloud: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderBitbucketCloudArgs{
    															Owner:       pulumi.String("string"),
    															User:        pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															AppPasswordRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderBitbucketCloudAppPasswordRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														BitbucketServer: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderBitbucketServerArgs{
    															Api:         pulumi.String("string"),
    															Project:     pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															BasicAuth: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthArgs{
    																PasswordRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs{
    																	Key:        pulumi.String("string"),
    																	SecretName: pulumi.String("string"),
    																},
    																Username: pulumi.String("string"),
    															},
    														},
    														CloneProtocol: pulumi.String("string"),
    														Filters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderFilterArray{
    															&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderFilterArgs{
    																BranchMatch: pulumi.String("string"),
    																LabelMatch:  pulumi.String("string"),
    																PathsDoNotExists: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																PathsExists: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																RepositoryMatch: pulumi.String("string"),
    															},
    														},
    														Gitea: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGiteaArgs{
    															Owner:       pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															Api:         pulumi.String("string"),
    															Insecure:    pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGiteaTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Github: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGithubArgs{
    															Organization:  pulumi.String("string"),
    															AllBranches:   pulumi.Bool(false),
    															Api:           pulumi.String("string"),
    															AppSecretName: pulumi.String("string"),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGithubTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Gitlab: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGitlabArgs{
    															Group:            pulumi.String("string"),
    															AllBranches:      pulumi.Bool(false),
    															Api:              pulumi.String("string"),
    															IncludeSubgroups: pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderGitlabTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												Selector: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorSelectorArgs{
    													MatchExpressions: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorSelectorMatchExpressionArray{
    														&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixGeneratorSelectorMatchExpressionArgs{
    															Key:      pulumi.String("string"),
    															Operator: pulumi.String("string"),
    															Values: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    														},
    													},
    													MatchLabels: pulumi.StringMap{
    														"string": pulumi.String("string"),
    													},
    												},
    											},
    										},
    										Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMatrixTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    									},
    								},
    								Merges: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeArgs{
    										Generators: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorArray{
    											&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorArgs{
    												ClusterDecisionResources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceArgs{
    														ConfigMapRef: pulumi.String("string"),
    														LabelSelector: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorArgs{
    															MatchExpressions: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs{
    																	Key:      pulumi.String("string"),
    																	Operator: pulumi.String("string"),
    																	Values: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    															MatchLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Name:                pulumi.String("string"),
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Clusters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterArgs{
    														Enabled: pulumi.Bool(false),
    														Selector: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterSelectorArgs{
    															MatchExpressions: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterSelectorMatchExpressionArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterSelectorMatchExpressionArgs{
    																	Key:      pulumi.String("string"),
    																	Operator: pulumi.String("string"),
    																	Values: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    															MatchLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Gits: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitArgs{
    														RepoUrl: pulumi.String("string"),
    														Directories: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitDirectoryArray{
    															&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitDirectoryArgs{
    																Path:    pulumi.String("string"),
    																Exclude: pulumi.Bool(false),
    															},
    														},
    														Files: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitFileArray{
    															&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitFileArgs{
    																Path: pulumi.String("string"),
    															},
    														},
    														PathParamPrefix: pulumi.String("string"),
    														Revision:        pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Lists: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListArgs{
    														Elements: pulumi.StringMapArray{
    															pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												PullRequests: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestArgs{
    														BitbucketServer: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestBitbucketServerArgs{
    															Api:     pulumi.String("string"),
    															Project: pulumi.String("string"),
    															Repo:    pulumi.String("string"),
    															BasicAuth: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthArgs{
    																PasswordRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs{
    																	Key:        pulumi.String("string"),
    																	SecretName: pulumi.String("string"),
    																},
    																Username: pulumi.String("string"),
    															},
    														},
    														Filters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestFilterArray{
    															&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestFilterArgs{
    																BranchMatch: pulumi.String("string"),
    															},
    														},
    														Gitea: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGiteaArgs{
    															Api:      pulumi.String("string"),
    															Owner:    pulumi.String("string"),
    															Repo:     pulumi.String("string"),
    															Insecure: pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGiteaTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Github: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGithubArgs{
    															Owner:         pulumi.String("string"),
    															Repo:          pulumi.String("string"),
    															Api:           pulumi.String("string"),
    															AppSecretName: pulumi.String("string"),
    															Labels: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGithubTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Gitlab: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGitlabArgs{
    															Project: pulumi.String("string"),
    															Api:     pulumi.String("string"),
    															Labels: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															PullRequestState: pulumi.String("string"),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestGitlabTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												ScmProviders: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderArgs{
    														AzureDevops: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderAzureDevopsArgs{
    															Organization: pulumi.String("string"),
    															TeamProject:  pulumi.String("string"),
    															AccessTokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderAzureDevopsAccessTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    															AllBranches: pulumi.Bool(false),
    															Api:         pulumi.String("string"),
    														},
    														BitbucketCloud: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderBitbucketCloudArgs{
    															Owner:       pulumi.String("string"),
    															User:        pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															AppPasswordRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderBitbucketCloudAppPasswordRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														BitbucketServer: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderBitbucketServerArgs{
    															Api:         pulumi.String("string"),
    															Project:     pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															BasicAuth: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthArgs{
    																PasswordRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs{
    																	Key:        pulumi.String("string"),
    																	SecretName: pulumi.String("string"),
    																},
    																Username: pulumi.String("string"),
    															},
    														},
    														CloneProtocol: pulumi.String("string"),
    														Filters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderFilterArray{
    															&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderFilterArgs{
    																BranchMatch: pulumi.String("string"),
    																LabelMatch:  pulumi.String("string"),
    																PathsDoNotExists: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																PathsExists: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																RepositoryMatch: pulumi.String("string"),
    															},
    														},
    														Gitea: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGiteaArgs{
    															Owner:       pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															Api:         pulumi.String("string"),
    															Insecure:    pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGiteaTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Github: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGithubArgs{
    															Organization:  pulumi.String("string"),
    															AllBranches:   pulumi.Bool(false),
    															Api:           pulumi.String("string"),
    															AppSecretName: pulumi.String("string"),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGithubTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Gitlab: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGitlabArgs{
    															Group:            pulumi.String("string"),
    															AllBranches:      pulumi.Bool(false),
    															Api:              pulumi.String("string"),
    															IncludeSubgroups: pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderGitlabTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												Selector: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorSelectorArgs{
    													MatchExpressions: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorSelectorMatchExpressionArray{
    														&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeGeneratorSelectorMatchExpressionArgs{
    															Key:      pulumi.String("string"),
    															Operator: pulumi.String("string"),
    															Values: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    														},
    													},
    													MatchLabels: pulumi.StringMap{
    														"string": pulumi.String("string"),
    													},
    												},
    											},
    										},
    										MergeKeys: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorMergeTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    									},
    								},
    								PullRequests: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestArgs{
    										BitbucketServer: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestBitbucketServerArgs{
    											Api:     pulumi.String("string"),
    											Project: pulumi.String("string"),
    											Repo:    pulumi.String("string"),
    											BasicAuth: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthArgs{
    												PasswordRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs{
    													Key:        pulumi.String("string"),
    													SecretName: pulumi.String("string"),
    												},
    												Username: pulumi.String("string"),
    											},
    										},
    										Filters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestFilterArray{
    											&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestFilterArgs{
    												BranchMatch: pulumi.String("string"),
    											},
    										},
    										Gitea: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGiteaArgs{
    											Api:      pulumi.String("string"),
    											Owner:    pulumi.String("string"),
    											Repo:     pulumi.String("string"),
    											Insecure: pulumi.Bool(false),
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGiteaTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										Github: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGithubArgs{
    											Owner:         pulumi.String("string"),
    											Repo:          pulumi.String("string"),
    											Api:           pulumi.String("string"),
    											AppSecretName: pulumi.String("string"),
    											Labels: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGithubTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										Gitlab: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGitlabArgs{
    											Project: pulumi.String("string"),
    											Api:     pulumi.String("string"),
    											Labels: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											PullRequestState: pulumi.String("string"),
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestGitlabTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										RequeueAfterSeconds: pulumi.String("string"),
    										Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    									},
    								},
    								ScmProviders: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderArgs{
    										AzureDevops: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderAzureDevopsArgs{
    											Organization: pulumi.String("string"),
    											TeamProject:  pulumi.String("string"),
    											AccessTokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderAzureDevopsAccessTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    											AllBranches: pulumi.Bool(false),
    											Api:         pulumi.String("string"),
    										},
    										BitbucketCloud: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderBitbucketCloudArgs{
    											Owner:       pulumi.String("string"),
    											User:        pulumi.String("string"),
    											AllBranches: pulumi.Bool(false),
    											AppPasswordRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderBitbucketCloudAppPasswordRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										BitbucketServer: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderBitbucketServerArgs{
    											Api:         pulumi.String("string"),
    											Project:     pulumi.String("string"),
    											AllBranches: pulumi.Bool(false),
    											BasicAuth: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthArgs{
    												PasswordRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs{
    													Key:        pulumi.String("string"),
    													SecretName: pulumi.String("string"),
    												},
    												Username: pulumi.String("string"),
    											},
    										},
    										CloneProtocol: pulumi.String("string"),
    										Filters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderFilterArray{
    											&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderFilterArgs{
    												BranchMatch: pulumi.String("string"),
    												LabelMatch:  pulumi.String("string"),
    												PathsDoNotExists: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												PathsExists: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												RepositoryMatch: pulumi.String("string"),
    											},
    										},
    										Gitea: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGiteaArgs{
    											Owner:       pulumi.String("string"),
    											AllBranches: pulumi.Bool(false),
    											Api:         pulumi.String("string"),
    											Insecure:    pulumi.Bool(false),
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGiteaTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										Github: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGithubArgs{
    											Organization:  pulumi.String("string"),
    											AllBranches:   pulumi.Bool(false),
    											Api:           pulumi.String("string"),
    											AppSecretName: pulumi.String("string"),
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGithubTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										Gitlab: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGitlabArgs{
    											Group:            pulumi.String("string"),
    											AllBranches:      pulumi.Bool(false),
    											Api:              pulumi.String("string"),
    											IncludeSubgroups: pulumi.Bool(false),
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderGitlabTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										RequeueAfterSeconds: pulumi.String("string"),
    										Template: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    									},
    								},
    								Selector: &argocd.ApplicationSetSpecGeneratorMatrixGeneratorSelectorArgs{
    									MatchExpressions: argocd.ApplicationSetSpecGeneratorMatrixGeneratorSelectorMatchExpressionArray{
    										&argocd.ApplicationSetSpecGeneratorMatrixGeneratorSelectorMatchExpressionArgs{
    											Key:      pulumi.String("string"),
    											Operator: pulumi.String("string"),
    											Values: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    										},
    									},
    									MatchLabels: pulumi.StringMap{
    										"string": pulumi.String("string"),
    									},
    								},
    							},
    						},
    						Template: &argocd.ApplicationSetSpecGeneratorMatrixTemplateArgs{
    							Metadata: &argocd.ApplicationSetSpecGeneratorMatrixTemplateMetadataArgs{
    								Annotations: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Finalizers: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								Labels: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Name:      pulumi.String("string"),
    								Namespace: pulumi.String("string"),
    							},
    							Spec: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecArgs{
    								Destination: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecDestinationArgs{
    									Name:      pulumi.String("string"),
    									Namespace: pulumi.String("string"),
    									Server:    pulumi.String("string"),
    								},
    								IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecIgnoreDifferenceArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecIgnoreDifferenceArgs{
    										Group: pulumi.String("string"),
    										JqPathExpressions: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										JsonPointers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Kind: pulumi.String("string"),
    										ManagedFieldsManagers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Name:      pulumi.String("string"),
    										Namespace: pulumi.String("string"),
    									},
    								},
    								Infos: argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecInfoArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecInfoArgs{
    										Name:  pulumi.String("string"),
    										Value: pulumi.String("string"),
    									},
    								},
    								Project:              pulumi.String("string"),
    								RevisionHistoryLimit: pulumi.Int(0),
    								Sources: argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceArray{
    									&argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceArgs{
    										Chart: pulumi.String("string"),
    										Directory: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceDirectoryArgs{
    											Exclude: pulumi.String("string"),
    											Include: pulumi.String("string"),
    											Jsonnet: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceDirectoryJsonnetArgs{
    												ExtVars: argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceDirectoryJsonnetExtVarArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Libs: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Tlas: argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceDirectoryJsonnetTlaArray{
    													&argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceDirectoryJsonnetTlaArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    											},
    											Recurse: pulumi.Bool(false),
    										},
    										Helm: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceHelmArgs{
    											FileParameters: argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceHelmFileParameterArray{
    												&argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceHelmFileParameterArgs{
    													Name: pulumi.String("string"),
    													Path: pulumi.String("string"),
    												},
    											},
    											IgnoreMissingValueFiles: pulumi.Bool(false),
    											Parameters: argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceHelmParameterArray{
    												&argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceHelmParameterArgs{
    													ForceString: pulumi.Bool(false),
    													Name:        pulumi.String("string"),
    													Value:       pulumi.String("string"),
    												},
    											},
    											PassCredentials: pulumi.Bool(false),
    											ReleaseName:     pulumi.String("string"),
    											SkipCrds:        pulumi.Bool(false),
    											ValueFiles: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											Values:  pulumi.String("string"),
    											Version: pulumi.String("string"),
    										},
    										Kustomize: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceKustomizeArgs{
    											CommonAnnotations: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											CommonLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											Images: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											NamePrefix: pulumi.String("string"),
    											NameSuffix: pulumi.String("string"),
    											Patches: argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceKustomizePatchArray{
    												&argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceKustomizePatchArgs{
    													Target: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourceKustomizePatchTargetArgs{
    														AnnotationSelector: pulumi.String("string"),
    														Group:              pulumi.String("string"),
    														Kind:               pulumi.String("string"),
    														LabelSelector:      pulumi.String("string"),
    														Name:               pulumi.String("string"),
    														Namespace:          pulumi.String("string"),
    														Version:            pulumi.String("string"),
    													},
    													Options: pulumi.BoolMap{
    														"string": pulumi.Bool(false),
    													},
    													Patch: pulumi.String("string"),
    													Path:  pulumi.String("string"),
    												},
    											},
    											Version: pulumi.String("string"),
    										},
    										Path: pulumi.String("string"),
    										Plugin: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourcePluginArgs{
    											Envs: argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourcePluginEnvArray{
    												&argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSourcePluginEnvArgs{
    													Name:  pulumi.String("string"),
    													Value: pulumi.String("string"),
    												},
    											},
    											Name: pulumi.String("string"),
    										},
    										Ref:            pulumi.String("string"),
    										RepoUrl:        pulumi.String("string"),
    										TargetRevision: pulumi.String("string"),
    									},
    								},
    								SyncPolicy: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSyncPolicyArgs{
    									Automated: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSyncPolicyAutomatedArgs{
    										AllowEmpty: pulumi.Bool(false),
    										Prune:      pulumi.Bool(false),
    										SelfHeal:   pulumi.Bool(false),
    									},
    									ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    										Annotations: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    										Labels: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    									Retry: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSyncPolicyRetryArgs{
    										Backoff: &argocd.ApplicationSetSpecGeneratorMatrixTemplateSpecSyncPolicyRetryBackoffArgs{
    											Duration:    pulumi.String("string"),
    											Factor:      pulumi.String("string"),
    											MaxDuration: pulumi.String("string"),
    										},
    										Limit: pulumi.String("string"),
    									},
    									SyncOptions: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    						},
    					},
    				},
    				Merges: argocd.ApplicationSetSpecGeneratorMergeArray{
    					&argocd.ApplicationSetSpecGeneratorMergeArgs{
    						Generators: argocd.ApplicationSetSpecGeneratorMergeGeneratorArray{
    							&argocd.ApplicationSetSpecGeneratorMergeGeneratorArgs{
    								ClusterDecisionResources: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceArray{
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceArgs{
    										ConfigMapRef: pulumi.String("string"),
    										LabelSelector: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorArgs{
    											MatchExpressions: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArray{
    												&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs{
    													Key:      pulumi.String("string"),
    													Operator: pulumi.String("string"),
    													Values: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    											MatchLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    										},
    										Name:                pulumi.String("string"),
    										RequeueAfterSeconds: pulumi.String("string"),
    										Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    										Values: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    								},
    								Clusters: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterArray{
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterArgs{
    										Enabled: pulumi.Bool(false),
    										Selector: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterSelectorArgs{
    											MatchExpressions: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterSelectorMatchExpressionArray{
    												&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterSelectorMatchExpressionArgs{
    													Key:      pulumi.String("string"),
    													Operator: pulumi.String("string"),
    													Values: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    											MatchLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    										},
    										Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    										Values: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    								},
    								Gits: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitArray{
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitArgs{
    										RepoUrl: pulumi.String("string"),
    										Directories: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitDirectoryArray{
    											&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitDirectoryArgs{
    												Path:    pulumi.String("string"),
    												Exclude: pulumi.Bool(false),
    											},
    										},
    										Files: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitFileArray{
    											&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitFileArgs{
    												Path: pulumi.String("string"),
    											},
    										},
    										PathParamPrefix: pulumi.String("string"),
    										Revision:        pulumi.String("string"),
    										Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    										Values: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    								},
    								Lists: argocd.ApplicationSetSpecGeneratorMergeGeneratorListArray{
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorListArgs{
    										Elements: pulumi.StringMapArray{
    											pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    										},
    										Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    									},
    								},
    								Matrices: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixArray{
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixArgs{
    										Generators: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorArray{
    											&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorArgs{
    												ClusterDecisionResources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceArgs{
    														ConfigMapRef: pulumi.String("string"),
    														LabelSelector: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorArgs{
    															MatchExpressions: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs{
    																	Key:      pulumi.String("string"),
    																	Operator: pulumi.String("string"),
    																	Values: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    															MatchLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Name:                pulumi.String("string"),
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Clusters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterArgs{
    														Enabled: pulumi.Bool(false),
    														Selector: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterSelectorArgs{
    															MatchExpressions: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterSelectorMatchExpressionArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterSelectorMatchExpressionArgs{
    																	Key:      pulumi.String("string"),
    																	Operator: pulumi.String("string"),
    																	Values: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    															MatchLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Gits: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitArgs{
    														RepoUrl: pulumi.String("string"),
    														Directories: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitDirectoryArray{
    															&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitDirectoryArgs{
    																Path:    pulumi.String("string"),
    																Exclude: pulumi.Bool(false),
    															},
    														},
    														Files: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitFileArray{
    															&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitFileArgs{
    																Path: pulumi.String("string"),
    															},
    														},
    														PathParamPrefix: pulumi.String("string"),
    														Revision:        pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Lists: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListArgs{
    														Elements: pulumi.StringMapArray{
    															pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												PullRequests: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestArgs{
    														BitbucketServer: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestBitbucketServerArgs{
    															Api:     pulumi.String("string"),
    															Project: pulumi.String("string"),
    															Repo:    pulumi.String("string"),
    															BasicAuth: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthArgs{
    																PasswordRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs{
    																	Key:        pulumi.String("string"),
    																	SecretName: pulumi.String("string"),
    																},
    																Username: pulumi.String("string"),
    															},
    														},
    														Filters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestFilterArray{
    															&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestFilterArgs{
    																BranchMatch: pulumi.String("string"),
    															},
    														},
    														Gitea: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGiteaArgs{
    															Api:      pulumi.String("string"),
    															Owner:    pulumi.String("string"),
    															Repo:     pulumi.String("string"),
    															Insecure: pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGiteaTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Github: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGithubArgs{
    															Owner:         pulumi.String("string"),
    															Repo:          pulumi.String("string"),
    															Api:           pulumi.String("string"),
    															AppSecretName: pulumi.String("string"),
    															Labels: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGithubTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Gitlab: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGitlabArgs{
    															Project: pulumi.String("string"),
    															Api:     pulumi.String("string"),
    															Labels: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															PullRequestState: pulumi.String("string"),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestGitlabTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												ScmProviders: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderArgs{
    														AzureDevops: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderAzureDevopsArgs{
    															Organization: pulumi.String("string"),
    															TeamProject:  pulumi.String("string"),
    															AccessTokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderAzureDevopsAccessTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    															AllBranches: pulumi.Bool(false),
    															Api:         pulumi.String("string"),
    														},
    														BitbucketCloud: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderBitbucketCloudArgs{
    															Owner:       pulumi.String("string"),
    															User:        pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															AppPasswordRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderBitbucketCloudAppPasswordRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														BitbucketServer: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderBitbucketServerArgs{
    															Api:         pulumi.String("string"),
    															Project:     pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															BasicAuth: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthArgs{
    																PasswordRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs{
    																	Key:        pulumi.String("string"),
    																	SecretName: pulumi.String("string"),
    																},
    																Username: pulumi.String("string"),
    															},
    														},
    														CloneProtocol: pulumi.String("string"),
    														Filters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderFilterArray{
    															&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderFilterArgs{
    																BranchMatch: pulumi.String("string"),
    																LabelMatch:  pulumi.String("string"),
    																PathsDoNotExists: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																PathsExists: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																RepositoryMatch: pulumi.String("string"),
    															},
    														},
    														Gitea: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGiteaArgs{
    															Owner:       pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															Api:         pulumi.String("string"),
    															Insecure:    pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGiteaTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Github: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGithubArgs{
    															Organization:  pulumi.String("string"),
    															AllBranches:   pulumi.Bool(false),
    															Api:           pulumi.String("string"),
    															AppSecretName: pulumi.String("string"),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGithubTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Gitlab: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGitlabArgs{
    															Group:            pulumi.String("string"),
    															AllBranches:      pulumi.Bool(false),
    															Api:              pulumi.String("string"),
    															IncludeSubgroups: pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderGitlabTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												Selector: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorSelectorArgs{
    													MatchExpressions: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorSelectorMatchExpressionArray{
    														&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixGeneratorSelectorMatchExpressionArgs{
    															Key:      pulumi.String("string"),
    															Operator: pulumi.String("string"),
    															Values: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    														},
    													},
    													MatchLabels: pulumi.StringMap{
    														"string": pulumi.String("string"),
    													},
    												},
    											},
    										},
    										Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMatrixTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    									},
    								},
    								Merges: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeArray{
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeArgs{
    										Generators: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorArray{
    											&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorArgs{
    												ClusterDecisionResources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceArgs{
    														ConfigMapRef: pulumi.String("string"),
    														LabelSelector: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorArgs{
    															MatchExpressions: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceLabelSelectorMatchExpressionArgs{
    																	Key:      pulumi.String("string"),
    																	Operator: pulumi.String("string"),
    																	Values: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    															MatchLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Name:                pulumi.String("string"),
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterDecisionResourceTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Clusters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterArgs{
    														Enabled: pulumi.Bool(false),
    														Selector: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterSelectorArgs{
    															MatchExpressions: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterSelectorMatchExpressionArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterSelectorMatchExpressionArgs{
    																	Key:      pulumi.String("string"),
    																	Operator: pulumi.String("string"),
    																	Values: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    															MatchLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorClusterTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Gits: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitArgs{
    														RepoUrl: pulumi.String("string"),
    														Directories: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitDirectoryArray{
    															&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitDirectoryArgs{
    																Path:    pulumi.String("string"),
    																Exclude: pulumi.Bool(false),
    															},
    														},
    														Files: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitFileArray{
    															&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitFileArgs{
    																Path: pulumi.String("string"),
    															},
    														},
    														PathParamPrefix: pulumi.String("string"),
    														Revision:        pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorGitTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    														Values: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    												},
    												Lists: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListArgs{
    														Elements: pulumi.StringMapArray{
    															pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    														},
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorListTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												PullRequests: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestArgs{
    														BitbucketServer: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestBitbucketServerArgs{
    															Api:     pulumi.String("string"),
    															Project: pulumi.String("string"),
    															Repo:    pulumi.String("string"),
    															BasicAuth: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthArgs{
    																PasswordRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs{
    																	Key:        pulumi.String("string"),
    																	SecretName: pulumi.String("string"),
    																},
    																Username: pulumi.String("string"),
    															},
    														},
    														Filters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestFilterArray{
    															&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestFilterArgs{
    																BranchMatch: pulumi.String("string"),
    															},
    														},
    														Gitea: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGiteaArgs{
    															Api:      pulumi.String("string"),
    															Owner:    pulumi.String("string"),
    															Repo:     pulumi.String("string"),
    															Insecure: pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGiteaTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Github: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGithubArgs{
    															Owner:         pulumi.String("string"),
    															Repo:          pulumi.String("string"),
    															Api:           pulumi.String("string"),
    															AppSecretName: pulumi.String("string"),
    															Labels: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGithubTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Gitlab: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGitlabArgs{
    															Project: pulumi.String("string"),
    															Api:     pulumi.String("string"),
    															Labels: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															PullRequestState: pulumi.String("string"),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestGitlabTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												ScmProviders: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderArgs{
    														AzureDevops: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderAzureDevopsArgs{
    															Organization: pulumi.String("string"),
    															TeamProject:  pulumi.String("string"),
    															AccessTokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderAzureDevopsAccessTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    															AllBranches: pulumi.Bool(false),
    															Api:         pulumi.String("string"),
    														},
    														BitbucketCloud: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderBitbucketCloudArgs{
    															Owner:       pulumi.String("string"),
    															User:        pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															AppPasswordRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderBitbucketCloudAppPasswordRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														BitbucketServer: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderBitbucketServerArgs{
    															Api:         pulumi.String("string"),
    															Project:     pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															BasicAuth: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthArgs{
    																PasswordRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs{
    																	Key:        pulumi.String("string"),
    																	SecretName: pulumi.String("string"),
    																},
    																Username: pulumi.String("string"),
    															},
    														},
    														CloneProtocol: pulumi.String("string"),
    														Filters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderFilterArray{
    															&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderFilterArgs{
    																BranchMatch: pulumi.String("string"),
    																LabelMatch:  pulumi.String("string"),
    																PathsDoNotExists: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																PathsExists: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																RepositoryMatch: pulumi.String("string"),
    															},
    														},
    														Gitea: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGiteaArgs{
    															Owner:       pulumi.String("string"),
    															AllBranches: pulumi.Bool(false),
    															Api:         pulumi.String("string"),
    															Insecure:    pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGiteaTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Github: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGithubArgs{
    															Organization:  pulumi.String("string"),
    															AllBranches:   pulumi.Bool(false),
    															Api:           pulumi.String("string"),
    															AppSecretName: pulumi.String("string"),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGithubTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														Gitlab: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGitlabArgs{
    															Group:            pulumi.String("string"),
    															AllBranches:      pulumi.Bool(false),
    															Api:              pulumi.String("string"),
    															IncludeSubgroups: pulumi.Bool(false),
    															TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderGitlabTokenRefArgs{
    																Key:        pulumi.String("string"),
    																SecretName: pulumi.String("string"),
    															},
    														},
    														RequeueAfterSeconds: pulumi.String("string"),
    														Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateArgs{
    															Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateMetadataArgs{
    																Annotations: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Finalizers: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Labels: pulumi.StringMap{
    																	"string": pulumi.String("string"),
    																},
    																Name:      pulumi.String("string"),
    																Namespace: pulumi.String("string"),
    															},
    															Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecArgs{
    																Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecDestinationArgs{
    																	Name:      pulumi.String("string"),
    																	Namespace: pulumi.String("string"),
    																	Server:    pulumi.String("string"),
    																},
    																IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecIgnoreDifferenceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs{
    																		Group: pulumi.String("string"),
    																		JqPathExpressions: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		JsonPointers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Kind: pulumi.String("string"),
    																		ManagedFieldsManagers: pulumi.StringArray{
    																			pulumi.String("string"),
    																		},
    																		Name:      pulumi.String("string"),
    																		Namespace: pulumi.String("string"),
    																	},
    																},
    																Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecInfoArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecInfoArgs{
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Project:              pulumi.String("string"),
    																RevisionHistoryLimit: pulumi.Int(0),
    																Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceArgs{
    																		Chart: pulumi.String("string"),
    																		Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryArgs{
    																			Exclude: pulumi.String("string"),
    																			Include: pulumi.String("string"),
    																			Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs{
    																				ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																				Libs: pulumi.StringArray{
    																					pulumi.String("string"),
    																				},
    																				Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArray{
    																					&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																						Code:  pulumi.Bool(false),
    																						Name:  pulumi.String("string"),
    																						Value: pulumi.String("string"),
    																					},
    																				},
    																			},
    																			Recurse: pulumi.Bool(false),
    																		},
    																		Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmArgs{
    																			FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmFileParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs{
    																					Name: pulumi.String("string"),
    																					Path: pulumi.String("string"),
    																				},
    																			},
    																			IgnoreMissingValueFiles: pulumi.Bool(false),
    																			Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmParameterArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmParameterArgs{
    																					ForceString: pulumi.Bool(false),
    																					Name:        pulumi.String("string"),
    																					Value:       pulumi.String("string"),
    																				},
    																			},
    																			PassCredentials: pulumi.Bool(false),
    																			ReleaseName:     pulumi.String("string"),
    																			SkipCrds:        pulumi.Bool(false),
    																			ValueFiles: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			Values:  pulumi.String("string"),
    																			Version: pulumi.String("string"),
    																		},
    																		Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizeArgs{
    																			CommonAnnotations: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			CommonLabels: pulumi.StringMap{
    																				"string": pulumi.String("string"),
    																			},
    																			Images: pulumi.StringArray{
    																				pulumi.String("string"),
    																			},
    																			NamePrefix: pulumi.String("string"),
    																			NameSuffix: pulumi.String("string"),
    																			Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs{
    																					Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs{
    																						AnnotationSelector: pulumi.String("string"),
    																						Group:              pulumi.String("string"),
    																						Kind:               pulumi.String("string"),
    																						LabelSelector:      pulumi.String("string"),
    																						Name:               pulumi.String("string"),
    																						Namespace:          pulumi.String("string"),
    																						Version:            pulumi.String("string"),
    																					},
    																					Options: pulumi.BoolMap{
    																						"string": pulumi.Bool(false),
    																					},
    																					Patch: pulumi.String("string"),
    																					Path:  pulumi.String("string"),
    																				},
    																			},
    																			Version: pulumi.String("string"),
    																		},
    																		Path: pulumi.String("string"),
    																		Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginArgs{
    																			Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginEnvArray{
    																				&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginEnvArgs{
    																					Name:  pulumi.String("string"),
    																					Value: pulumi.String("string"),
    																				},
    																			},
    																			Name: pulumi.String("string"),
    																		},
    																		Ref:            pulumi.String("string"),
    																		RepoUrl:        pulumi.String("string"),
    																		TargetRevision: pulumi.String("string"),
    																	},
    																},
    																SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyArgs{
    																	Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs{
    																		AllowEmpty: pulumi.Bool(false),
    																		Prune:      pulumi.Bool(false),
    																		SelfHeal:   pulumi.Bool(false),
    																	},
    																	ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    																		Annotations: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																		Labels: pulumi.StringMap{
    																			"string": pulumi.String("string"),
    																		},
    																	},
    																	Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs{
    																		Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs{
    																			Duration:    pulumi.String("string"),
    																			Factor:      pulumi.String("string"),
    																			MaxDuration: pulumi.String("string"),
    																		},
    																		Limit: pulumi.String("string"),
    																	},
    																	SyncOptions: pulumi.StringArray{
    																		pulumi.String("string"),
    																	},
    																},
    															},
    														},
    													},
    												},
    												Selector: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorSelectorArgs{
    													MatchExpressions: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorSelectorMatchExpressionArray{
    														&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeGeneratorSelectorMatchExpressionArgs{
    															Key:      pulumi.String("string"),
    															Operator: pulumi.String("string"),
    															Values: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    														},
    													},
    													MatchLabels: pulumi.StringMap{
    														"string": pulumi.String("string"),
    													},
    												},
    											},
    										},
    										MergeKeys: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorMergeTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    									},
    								},
    								PullRequests: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestArray{
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestArgs{
    										BitbucketServer: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestBitbucketServerArgs{
    											Api:     pulumi.String("string"),
    											Project: pulumi.String("string"),
    											Repo:    pulumi.String("string"),
    											BasicAuth: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthArgs{
    												PasswordRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs{
    													Key:        pulumi.String("string"),
    													SecretName: pulumi.String("string"),
    												},
    												Username: pulumi.String("string"),
    											},
    										},
    										Filters: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestFilterArray{
    											&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestFilterArgs{
    												BranchMatch: pulumi.String("string"),
    											},
    										},
    										Gitea: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGiteaArgs{
    											Api:      pulumi.String("string"),
    											Owner:    pulumi.String("string"),
    											Repo:     pulumi.String("string"),
    											Insecure: pulumi.Bool(false),
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGiteaTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										Github: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGithubArgs{
    											Owner:         pulumi.String("string"),
    											Repo:          pulumi.String("string"),
    											Api:           pulumi.String("string"),
    											AppSecretName: pulumi.String("string"),
    											Labels: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGithubTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										Gitlab: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGitlabArgs{
    											Project: pulumi.String("string"),
    											Api:     pulumi.String("string"),
    											Labels: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											PullRequestState: pulumi.String("string"),
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestGitlabTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										RequeueAfterSeconds: pulumi.String("string"),
    										Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    									},
    								},
    								ScmProviders: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderArray{
    									&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderArgs{
    										AzureDevops: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderAzureDevopsArgs{
    											Organization: pulumi.String("string"),
    											TeamProject:  pulumi.String("string"),
    											AccessTokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderAzureDevopsAccessTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    											AllBranches: pulumi.Bool(false),
    											Api:         pulumi.String("string"),
    										},
    										BitbucketCloud: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderBitbucketCloudArgs{
    											Owner:       pulumi.String("string"),
    											User:        pulumi.String("string"),
    											AllBranches: pulumi.Bool(false),
    											AppPasswordRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderBitbucketCloudAppPasswordRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										BitbucketServer: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderBitbucketServerArgs{
    											Api:         pulumi.String("string"),
    											Project:     pulumi.String("string"),
    											AllBranches: pulumi.Bool(false),
    											BasicAuth: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthArgs{
    												PasswordRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs{
    													Key:        pulumi.String("string"),
    													SecretName: pulumi.String("string"),
    												},
    												Username: pulumi.String("string"),
    											},
    										},
    										CloneProtocol: pulumi.String("string"),
    										Filters: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderFilterArray{
    											&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderFilterArgs{
    												BranchMatch: pulumi.String("string"),
    												LabelMatch:  pulumi.String("string"),
    												PathsDoNotExists: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												PathsExists: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												RepositoryMatch: pulumi.String("string"),
    											},
    										},
    										Gitea: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGiteaArgs{
    											Owner:       pulumi.String("string"),
    											AllBranches: pulumi.Bool(false),
    											Api:         pulumi.String("string"),
    											Insecure:    pulumi.Bool(false),
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGiteaTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										Github: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGithubArgs{
    											Organization:  pulumi.String("string"),
    											AllBranches:   pulumi.Bool(false),
    											Api:           pulumi.String("string"),
    											AppSecretName: pulumi.String("string"),
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGithubTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										Gitlab: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGitlabArgs{
    											Group:            pulumi.String("string"),
    											AllBranches:      pulumi.Bool(false),
    											Api:              pulumi.String("string"),
    											IncludeSubgroups: pulumi.Bool(false),
    											TokenRef: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderGitlabTokenRefArgs{
    												Key:        pulumi.String("string"),
    												SecretName: pulumi.String("string"),
    											},
    										},
    										RequeueAfterSeconds: pulumi.String("string"),
    										Template: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateArgs{
    											Metadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateMetadataArgs{
    												Annotations: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Finalizers: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Labels: pulumi.StringMap{
    													"string": pulumi.String("string"),
    												},
    												Name:      pulumi.String("string"),
    												Namespace: pulumi.String("string"),
    											},
    											Spec: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecArgs{
    												Destination: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecDestinationArgs{
    													Name:      pulumi.String("string"),
    													Namespace: pulumi.String("string"),
    													Server:    pulumi.String("string"),
    												},
    												IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecIgnoreDifferenceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs{
    														Group: pulumi.String("string"),
    														JqPathExpressions: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														JsonPointers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Kind: pulumi.String("string"),
    														ManagedFieldsManagers: pulumi.StringArray{
    															pulumi.String("string"),
    														},
    														Name:      pulumi.String("string"),
    														Namespace: pulumi.String("string"),
    													},
    												},
    												Infos: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecInfoArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecInfoArgs{
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Project:              pulumi.String("string"),
    												RevisionHistoryLimit: pulumi.Int(0),
    												Sources: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceArray{
    													&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceArgs{
    														Chart: pulumi.String("string"),
    														Directory: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryArgs{
    															Exclude: pulumi.String("string"),
    															Include: pulumi.String("string"),
    															Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs{
    																ExtVars: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    																Libs: pulumi.StringArray{
    																	pulumi.String("string"),
    																},
    																Tlas: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArray{
    																	&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs{
    																		Code:  pulumi.Bool(false),
    																		Name:  pulumi.String("string"),
    																		Value: pulumi.String("string"),
    																	},
    																},
    															},
    															Recurse: pulumi.Bool(false),
    														},
    														Helm: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmArgs{
    															FileParameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmFileParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs{
    																	Name: pulumi.String("string"),
    																	Path: pulumi.String("string"),
    																},
    															},
    															IgnoreMissingValueFiles: pulumi.Bool(false),
    															Parameters: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmParameterArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceHelmParameterArgs{
    																	ForceString: pulumi.Bool(false),
    																	Name:        pulumi.String("string"),
    																	Value:       pulumi.String("string"),
    																},
    															},
    															PassCredentials: pulumi.Bool(false),
    															ReleaseName:     pulumi.String("string"),
    															SkipCrds:        pulumi.Bool(false),
    															ValueFiles: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															Values:  pulumi.String("string"),
    															Version: pulumi.String("string"),
    														},
    														Kustomize: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizeArgs{
    															CommonAnnotations: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															CommonLabels: pulumi.StringMap{
    																"string": pulumi.String("string"),
    															},
    															Images: pulumi.StringArray{
    																pulumi.String("string"),
    															},
    															NamePrefix: pulumi.String("string"),
    															NameSuffix: pulumi.String("string"),
    															Patches: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs{
    																	Target: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs{
    																		AnnotationSelector: pulumi.String("string"),
    																		Group:              pulumi.String("string"),
    																		Kind:               pulumi.String("string"),
    																		LabelSelector:      pulumi.String("string"),
    																		Name:               pulumi.String("string"),
    																		Namespace:          pulumi.String("string"),
    																		Version:            pulumi.String("string"),
    																	},
    																	Options: pulumi.BoolMap{
    																		"string": pulumi.Bool(false),
    																	},
    																	Patch: pulumi.String("string"),
    																	Path:  pulumi.String("string"),
    																},
    															},
    															Version: pulumi.String("string"),
    														},
    														Path: pulumi.String("string"),
    														Plugin: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginArgs{
    															Envs: argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginEnvArray{
    																&argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSourcePluginEnvArgs{
    																	Name:  pulumi.String("string"),
    																	Value: pulumi.String("string"),
    																},
    															},
    															Name: pulumi.String("string"),
    														},
    														Ref:            pulumi.String("string"),
    														RepoUrl:        pulumi.String("string"),
    														TargetRevision: pulumi.String("string"),
    													},
    												},
    												SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyArgs{
    													Automated: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs{
    														AllowEmpty: pulumi.Bool(false),
    														Prune:      pulumi.Bool(false),
    														SelfHeal:   pulumi.Bool(false),
    													},
    													ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    														Annotations: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    														Labels: pulumi.StringMap{
    															"string": pulumi.String("string"),
    														},
    													},
    													Retry: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs{
    														Backoff: &argocd.ApplicationSetSpecGeneratorMergeGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs{
    															Duration:    pulumi.String("string"),
    															Factor:      pulumi.String("string"),
    															MaxDuration: pulumi.String("string"),
    														},
    														Limit: pulumi.String("string"),
    													},
    													SyncOptions: pulumi.StringArray{
    														pulumi.String("string"),
    													},
    												},
    											},
    										},
    									},
    								},
    								Selector: &argocd.ApplicationSetSpecGeneratorMergeGeneratorSelectorArgs{
    									MatchExpressions: argocd.ApplicationSetSpecGeneratorMergeGeneratorSelectorMatchExpressionArray{
    										&argocd.ApplicationSetSpecGeneratorMergeGeneratorSelectorMatchExpressionArgs{
    											Key:      pulumi.String("string"),
    											Operator: pulumi.String("string"),
    											Values: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    										},
    									},
    									MatchLabels: pulumi.StringMap{
    										"string": pulumi.String("string"),
    									},
    								},
    							},
    						},
    						MergeKeys: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Template: &argocd.ApplicationSetSpecGeneratorMergeTemplateArgs{
    							Metadata: &argocd.ApplicationSetSpecGeneratorMergeTemplateMetadataArgs{
    								Annotations: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Finalizers: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								Labels: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Name:      pulumi.String("string"),
    								Namespace: pulumi.String("string"),
    							},
    							Spec: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecArgs{
    								Destination: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecDestinationArgs{
    									Name:      pulumi.String("string"),
    									Namespace: pulumi.String("string"),
    									Server:    pulumi.String("string"),
    								},
    								IgnoreDifferences: argocd.ApplicationSetSpecGeneratorMergeTemplateSpecIgnoreDifferenceArray{
    									&argocd.ApplicationSetSpecGeneratorMergeTemplateSpecIgnoreDifferenceArgs{
    										Group: pulumi.String("string"),
    										JqPathExpressions: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										JsonPointers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Kind: pulumi.String("string"),
    										ManagedFieldsManagers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Name:      pulumi.String("string"),
    										Namespace: pulumi.String("string"),
    									},
    								},
    								Infos: argocd.ApplicationSetSpecGeneratorMergeTemplateSpecInfoArray{
    									&argocd.ApplicationSetSpecGeneratorMergeTemplateSpecInfoArgs{
    										Name:  pulumi.String("string"),
    										Value: pulumi.String("string"),
    									},
    								},
    								Project:              pulumi.String("string"),
    								RevisionHistoryLimit: pulumi.Int(0),
    								Sources: argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceArray{
    									&argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceArgs{
    										Chart: pulumi.String("string"),
    										Directory: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceDirectoryArgs{
    											Exclude: pulumi.String("string"),
    											Include: pulumi.String("string"),
    											Jsonnet: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceDirectoryJsonnetArgs{
    												ExtVars: argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceDirectoryJsonnetExtVarArray{
    													&argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Libs: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Tlas: argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceDirectoryJsonnetTlaArray{
    													&argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceDirectoryJsonnetTlaArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    											},
    											Recurse: pulumi.Bool(false),
    										},
    										Helm: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceHelmArgs{
    											FileParameters: argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceHelmFileParameterArray{
    												&argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceHelmFileParameterArgs{
    													Name: pulumi.String("string"),
    													Path: pulumi.String("string"),
    												},
    											},
    											IgnoreMissingValueFiles: pulumi.Bool(false),
    											Parameters: argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceHelmParameterArray{
    												&argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceHelmParameterArgs{
    													ForceString: pulumi.Bool(false),
    													Name:        pulumi.String("string"),
    													Value:       pulumi.String("string"),
    												},
    											},
    											PassCredentials: pulumi.Bool(false),
    											ReleaseName:     pulumi.String("string"),
    											SkipCrds:        pulumi.Bool(false),
    											ValueFiles: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											Values:  pulumi.String("string"),
    											Version: pulumi.String("string"),
    										},
    										Kustomize: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceKustomizeArgs{
    											CommonAnnotations: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											CommonLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											Images: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											NamePrefix: pulumi.String("string"),
    											NameSuffix: pulumi.String("string"),
    											Patches: argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceKustomizePatchArray{
    												&argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceKustomizePatchArgs{
    													Target: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourceKustomizePatchTargetArgs{
    														AnnotationSelector: pulumi.String("string"),
    														Group:              pulumi.String("string"),
    														Kind:               pulumi.String("string"),
    														LabelSelector:      pulumi.String("string"),
    														Name:               pulumi.String("string"),
    														Namespace:          pulumi.String("string"),
    														Version:            pulumi.String("string"),
    													},
    													Options: pulumi.BoolMap{
    														"string": pulumi.Bool(false),
    													},
    													Patch: pulumi.String("string"),
    													Path:  pulumi.String("string"),
    												},
    											},
    											Version: pulumi.String("string"),
    										},
    										Path: pulumi.String("string"),
    										Plugin: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourcePluginArgs{
    											Envs: argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourcePluginEnvArray{
    												&argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSourcePluginEnvArgs{
    													Name:  pulumi.String("string"),
    													Value: pulumi.String("string"),
    												},
    											},
    											Name: pulumi.String("string"),
    										},
    										Ref:            pulumi.String("string"),
    										RepoUrl:        pulumi.String("string"),
    										TargetRevision: pulumi.String("string"),
    									},
    								},
    								SyncPolicy: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSyncPolicyArgs{
    									Automated: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSyncPolicyAutomatedArgs{
    										AllowEmpty: pulumi.Bool(false),
    										Prune:      pulumi.Bool(false),
    										SelfHeal:   pulumi.Bool(false),
    									},
    									ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    										Annotations: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    										Labels: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    									Retry: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSyncPolicyRetryArgs{
    										Backoff: &argocd.ApplicationSetSpecGeneratorMergeTemplateSpecSyncPolicyRetryBackoffArgs{
    											Duration:    pulumi.String("string"),
    											Factor:      pulumi.String("string"),
    											MaxDuration: pulumi.String("string"),
    										},
    										Limit: pulumi.String("string"),
    									},
    									SyncOptions: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    						},
    					},
    				},
    				PullRequests: argocd.ApplicationSetSpecGeneratorPullRequestArray{
    					&argocd.ApplicationSetSpecGeneratorPullRequestArgs{
    						BitbucketServer: &argocd.ApplicationSetSpecGeneratorPullRequestBitbucketServerArgs{
    							Api:     pulumi.String("string"),
    							Project: pulumi.String("string"),
    							Repo:    pulumi.String("string"),
    							BasicAuth: &argocd.ApplicationSetSpecGeneratorPullRequestBitbucketServerBasicAuthArgs{
    								PasswordRef: &argocd.ApplicationSetSpecGeneratorPullRequestBitbucketServerBasicAuthPasswordRefArgs{
    									Key:        pulumi.String("string"),
    									SecretName: pulumi.String("string"),
    								},
    								Username: pulumi.String("string"),
    							},
    						},
    						Filters: argocd.ApplicationSetSpecGeneratorPullRequestFilterArray{
    							&argocd.ApplicationSetSpecGeneratorPullRequestFilterArgs{
    								BranchMatch: pulumi.String("string"),
    							},
    						},
    						Gitea: &argocd.ApplicationSetSpecGeneratorPullRequestGiteaArgs{
    							Api:      pulumi.String("string"),
    							Owner:    pulumi.String("string"),
    							Repo:     pulumi.String("string"),
    							Insecure: pulumi.Bool(false),
    							TokenRef: &argocd.ApplicationSetSpecGeneratorPullRequestGiteaTokenRefArgs{
    								Key:        pulumi.String("string"),
    								SecretName: pulumi.String("string"),
    							},
    						},
    						Github: &argocd.ApplicationSetSpecGeneratorPullRequestGithubArgs{
    							Owner:         pulumi.String("string"),
    							Repo:          pulumi.String("string"),
    							Api:           pulumi.String("string"),
    							AppSecretName: pulumi.String("string"),
    							Labels: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							TokenRef: &argocd.ApplicationSetSpecGeneratorPullRequestGithubTokenRefArgs{
    								Key:        pulumi.String("string"),
    								SecretName: pulumi.String("string"),
    							},
    						},
    						Gitlab: &argocd.ApplicationSetSpecGeneratorPullRequestGitlabArgs{
    							Project: pulumi.String("string"),
    							Api:     pulumi.String("string"),
    							Labels: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							PullRequestState: pulumi.String("string"),
    							TokenRef: &argocd.ApplicationSetSpecGeneratorPullRequestGitlabTokenRefArgs{
    								Key:        pulumi.String("string"),
    								SecretName: pulumi.String("string"),
    							},
    						},
    						RequeueAfterSeconds: pulumi.String("string"),
    						Template: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateArgs{
    							Metadata: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateMetadataArgs{
    								Annotations: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Finalizers: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								Labels: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Name:      pulumi.String("string"),
    								Namespace: pulumi.String("string"),
    							},
    							Spec: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecArgs{
    								Destination: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecDestinationArgs{
    									Name:      pulumi.String("string"),
    									Namespace: pulumi.String("string"),
    									Server:    pulumi.String("string"),
    								},
    								IgnoreDifferences: argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecIgnoreDifferenceArray{
    									&argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecIgnoreDifferenceArgs{
    										Group: pulumi.String("string"),
    										JqPathExpressions: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										JsonPointers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Kind: pulumi.String("string"),
    										ManagedFieldsManagers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Name:      pulumi.String("string"),
    										Namespace: pulumi.String("string"),
    									},
    								},
    								Infos: argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecInfoArray{
    									&argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecInfoArgs{
    										Name:  pulumi.String("string"),
    										Value: pulumi.String("string"),
    									},
    								},
    								Project:              pulumi.String("string"),
    								RevisionHistoryLimit: pulumi.Int(0),
    								Sources: argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceArray{
    									&argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceArgs{
    										Chart: pulumi.String("string"),
    										Directory: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceDirectoryArgs{
    											Exclude: pulumi.String("string"),
    											Include: pulumi.String("string"),
    											Jsonnet: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetArgs{
    												ExtVars: argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArray{
    													&argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Libs: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Tlas: argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArray{
    													&argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceDirectoryJsonnetTlaArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    											},
    											Recurse: pulumi.Bool(false),
    										},
    										Helm: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceHelmArgs{
    											FileParameters: argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceHelmFileParameterArray{
    												&argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceHelmFileParameterArgs{
    													Name: pulumi.String("string"),
    													Path: pulumi.String("string"),
    												},
    											},
    											IgnoreMissingValueFiles: pulumi.Bool(false),
    											Parameters: argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceHelmParameterArray{
    												&argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceHelmParameterArgs{
    													ForceString: pulumi.Bool(false),
    													Name:        pulumi.String("string"),
    													Value:       pulumi.String("string"),
    												},
    											},
    											PassCredentials: pulumi.Bool(false),
    											ReleaseName:     pulumi.String("string"),
    											SkipCrds:        pulumi.Bool(false),
    											ValueFiles: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											Values:  pulumi.String("string"),
    											Version: pulumi.String("string"),
    										},
    										Kustomize: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceKustomizeArgs{
    											CommonAnnotations: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											CommonLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											Images: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											NamePrefix: pulumi.String("string"),
    											NameSuffix: pulumi.String("string"),
    											Patches: argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceKustomizePatchArray{
    												&argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceKustomizePatchArgs{
    													Target: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourceKustomizePatchTargetArgs{
    														AnnotationSelector: pulumi.String("string"),
    														Group:              pulumi.String("string"),
    														Kind:               pulumi.String("string"),
    														LabelSelector:      pulumi.String("string"),
    														Name:               pulumi.String("string"),
    														Namespace:          pulumi.String("string"),
    														Version:            pulumi.String("string"),
    													},
    													Options: pulumi.BoolMap{
    														"string": pulumi.Bool(false),
    													},
    													Patch: pulumi.String("string"),
    													Path:  pulumi.String("string"),
    												},
    											},
    											Version: pulumi.String("string"),
    										},
    										Path: pulumi.String("string"),
    										Plugin: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourcePluginArgs{
    											Envs: argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourcePluginEnvArray{
    												&argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSourcePluginEnvArgs{
    													Name:  pulumi.String("string"),
    													Value: pulumi.String("string"),
    												},
    											},
    											Name: pulumi.String("string"),
    										},
    										Ref:            pulumi.String("string"),
    										RepoUrl:        pulumi.String("string"),
    										TargetRevision: pulumi.String("string"),
    									},
    								},
    								SyncPolicy: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSyncPolicyArgs{
    									Automated: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSyncPolicyAutomatedArgs{
    										AllowEmpty: pulumi.Bool(false),
    										Prune:      pulumi.Bool(false),
    										SelfHeal:   pulumi.Bool(false),
    									},
    									ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    										Annotations: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    										Labels: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    									Retry: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSyncPolicyRetryArgs{
    										Backoff: &argocd.ApplicationSetSpecGeneratorPullRequestTemplateSpecSyncPolicyRetryBackoffArgs{
    											Duration:    pulumi.String("string"),
    											Factor:      pulumi.String("string"),
    											MaxDuration: pulumi.String("string"),
    										},
    										Limit: pulumi.String("string"),
    									},
    									SyncOptions: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    						},
    					},
    				},
    				ScmProviders: argocd.ApplicationSetSpecGeneratorScmProviderArray{
    					&argocd.ApplicationSetSpecGeneratorScmProviderArgs{
    						AzureDevops: &argocd.ApplicationSetSpecGeneratorScmProviderAzureDevopsArgs{
    							Organization: pulumi.String("string"),
    							TeamProject:  pulumi.String("string"),
    							AccessTokenRef: &argocd.ApplicationSetSpecGeneratorScmProviderAzureDevopsAccessTokenRefArgs{
    								Key:        pulumi.String("string"),
    								SecretName: pulumi.String("string"),
    							},
    							AllBranches: pulumi.Bool(false),
    							Api:         pulumi.String("string"),
    						},
    						BitbucketCloud: &argocd.ApplicationSetSpecGeneratorScmProviderBitbucketCloudArgs{
    							Owner:       pulumi.String("string"),
    							User:        pulumi.String("string"),
    							AllBranches: pulumi.Bool(false),
    							AppPasswordRef: &argocd.ApplicationSetSpecGeneratorScmProviderBitbucketCloudAppPasswordRefArgs{
    								Key:        pulumi.String("string"),
    								SecretName: pulumi.String("string"),
    							},
    						},
    						BitbucketServer: &argocd.ApplicationSetSpecGeneratorScmProviderBitbucketServerArgs{
    							Api:         pulumi.String("string"),
    							Project:     pulumi.String("string"),
    							AllBranches: pulumi.Bool(false),
    							BasicAuth: &argocd.ApplicationSetSpecGeneratorScmProviderBitbucketServerBasicAuthArgs{
    								PasswordRef: &argocd.ApplicationSetSpecGeneratorScmProviderBitbucketServerBasicAuthPasswordRefArgs{
    									Key:        pulumi.String("string"),
    									SecretName: pulumi.String("string"),
    								},
    								Username: pulumi.String("string"),
    							},
    						},
    						CloneProtocol: pulumi.String("string"),
    						Filters: argocd.ApplicationSetSpecGeneratorScmProviderFilterArray{
    							&argocd.ApplicationSetSpecGeneratorScmProviderFilterArgs{
    								BranchMatch: pulumi.String("string"),
    								LabelMatch:  pulumi.String("string"),
    								PathsDoNotExists: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								PathsExists: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								RepositoryMatch: pulumi.String("string"),
    							},
    						},
    						Gitea: &argocd.ApplicationSetSpecGeneratorScmProviderGiteaArgs{
    							Owner:       pulumi.String("string"),
    							AllBranches: pulumi.Bool(false),
    							Api:         pulumi.String("string"),
    							Insecure:    pulumi.Bool(false),
    							TokenRef: &argocd.ApplicationSetSpecGeneratorScmProviderGiteaTokenRefArgs{
    								Key:        pulumi.String("string"),
    								SecretName: pulumi.String("string"),
    							},
    						},
    						Github: &argocd.ApplicationSetSpecGeneratorScmProviderGithubArgs{
    							Organization:  pulumi.String("string"),
    							AllBranches:   pulumi.Bool(false),
    							Api:           pulumi.String("string"),
    							AppSecretName: pulumi.String("string"),
    							TokenRef: &argocd.ApplicationSetSpecGeneratorScmProviderGithubTokenRefArgs{
    								Key:        pulumi.String("string"),
    								SecretName: pulumi.String("string"),
    							},
    						},
    						Gitlab: &argocd.ApplicationSetSpecGeneratorScmProviderGitlabArgs{
    							Group:            pulumi.String("string"),
    							AllBranches:      pulumi.Bool(false),
    							Api:              pulumi.String("string"),
    							IncludeSubgroups: pulumi.Bool(false),
    							TokenRef: &argocd.ApplicationSetSpecGeneratorScmProviderGitlabTokenRefArgs{
    								Key:        pulumi.String("string"),
    								SecretName: pulumi.String("string"),
    							},
    						},
    						RequeueAfterSeconds: pulumi.String("string"),
    						Template: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateArgs{
    							Metadata: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateMetadataArgs{
    								Annotations: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Finalizers: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								Labels: pulumi.StringMap{
    									"string": pulumi.String("string"),
    								},
    								Name:      pulumi.String("string"),
    								Namespace: pulumi.String("string"),
    							},
    							Spec: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecArgs{
    								Destination: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecDestinationArgs{
    									Name:      pulumi.String("string"),
    									Namespace: pulumi.String("string"),
    									Server:    pulumi.String("string"),
    								},
    								IgnoreDifferences: argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecIgnoreDifferenceArray{
    									&argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecIgnoreDifferenceArgs{
    										Group: pulumi.String("string"),
    										JqPathExpressions: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										JsonPointers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Kind: pulumi.String("string"),
    										ManagedFieldsManagers: pulumi.StringArray{
    											pulumi.String("string"),
    										},
    										Name:      pulumi.String("string"),
    										Namespace: pulumi.String("string"),
    									},
    								},
    								Infos: argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecInfoArray{
    									&argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecInfoArgs{
    										Name:  pulumi.String("string"),
    										Value: pulumi.String("string"),
    									},
    								},
    								Project:              pulumi.String("string"),
    								RevisionHistoryLimit: pulumi.Int(0),
    								Sources: argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceArray{
    									&argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceArgs{
    										Chart: pulumi.String("string"),
    										Directory: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceDirectoryArgs{
    											Exclude: pulumi.String("string"),
    											Include: pulumi.String("string"),
    											Jsonnet: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetArgs{
    												ExtVars: argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArray{
    													&argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    												Libs: pulumi.StringArray{
    													pulumi.String("string"),
    												},
    												Tlas: argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArray{
    													&argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceDirectoryJsonnetTlaArgs{
    														Code:  pulumi.Bool(false),
    														Name:  pulumi.String("string"),
    														Value: pulumi.String("string"),
    													},
    												},
    											},
    											Recurse: pulumi.Bool(false),
    										},
    										Helm: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceHelmArgs{
    											FileParameters: argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceHelmFileParameterArray{
    												&argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceHelmFileParameterArgs{
    													Name: pulumi.String("string"),
    													Path: pulumi.String("string"),
    												},
    											},
    											IgnoreMissingValueFiles: pulumi.Bool(false),
    											Parameters: argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceHelmParameterArray{
    												&argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceHelmParameterArgs{
    													ForceString: pulumi.Bool(false),
    													Name:        pulumi.String("string"),
    													Value:       pulumi.String("string"),
    												},
    											},
    											PassCredentials: pulumi.Bool(false),
    											ReleaseName:     pulumi.String("string"),
    											SkipCrds:        pulumi.Bool(false),
    											ValueFiles: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											Values:  pulumi.String("string"),
    											Version: pulumi.String("string"),
    										},
    										Kustomize: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceKustomizeArgs{
    											CommonAnnotations: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											CommonLabels: pulumi.StringMap{
    												"string": pulumi.String("string"),
    											},
    											Images: pulumi.StringArray{
    												pulumi.String("string"),
    											},
    											NamePrefix: pulumi.String("string"),
    											NameSuffix: pulumi.String("string"),
    											Patches: argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceKustomizePatchArray{
    												&argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceKustomizePatchArgs{
    													Target: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourceKustomizePatchTargetArgs{
    														AnnotationSelector: pulumi.String("string"),
    														Group:              pulumi.String("string"),
    														Kind:               pulumi.String("string"),
    														LabelSelector:      pulumi.String("string"),
    														Name:               pulumi.String("string"),
    														Namespace:          pulumi.String("string"),
    														Version:            pulumi.String("string"),
    													},
    													Options: pulumi.BoolMap{
    														"string": pulumi.Bool(false),
    													},
    													Patch: pulumi.String("string"),
    													Path:  pulumi.String("string"),
    												},
    											},
    											Version: pulumi.String("string"),
    										},
    										Path: pulumi.String("string"),
    										Plugin: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourcePluginArgs{
    											Envs: argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourcePluginEnvArray{
    												&argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSourcePluginEnvArgs{
    													Name:  pulumi.String("string"),
    													Value: pulumi.String("string"),
    												},
    											},
    											Name: pulumi.String("string"),
    										},
    										Ref:            pulumi.String("string"),
    										RepoUrl:        pulumi.String("string"),
    										TargetRevision: pulumi.String("string"),
    									},
    								},
    								SyncPolicy: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSyncPolicyArgs{
    									Automated: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSyncPolicyAutomatedArgs{
    										AllowEmpty: pulumi.Bool(false),
    										Prune:      pulumi.Bool(false),
    										SelfHeal:   pulumi.Bool(false),
    									},
    									ManagedNamespaceMetadata: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSyncPolicyManagedNamespaceMetadataArgs{
    										Annotations: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    										Labels: pulumi.StringMap{
    											"string": pulumi.String("string"),
    										},
    									},
    									Retry: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSyncPolicyRetryArgs{
    										Backoff: &argocd.ApplicationSetSpecGeneratorScmProviderTemplateSpecSyncPolicyRetryBackoffArgs{
    											Duration:    pulumi.String("string"),
    											Factor:      pulumi.String("string"),
    											MaxDuration: pulumi.String("string"),
    										},
    										Limit: pulumi.String("string"),
    									},
    									SyncOptions: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    						},
    					},
    				},
    				Selector: &argocd.ApplicationSetSpecGeneratorSelectorArgs{
    					MatchExpressions: argocd.ApplicationSetSpecGeneratorSelectorMatchExpressionArray{
    						&argocd.ApplicationSetSpecGeneratorSelectorMatchExpressionArgs{
    							Key:      pulumi.String("string"),
    							Operator: pulumi.String("string"),
    							Values: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    						},
    					},
    					MatchLabels: pulumi.StringMap{
    						"string": pulumi.String("string"),
    					},
    				},
    			},
    		},
    		Template: &argocd.ApplicationSetSpecTemplateArgs{
    			Metadata: &argocd.ApplicationSetSpecTemplateMetadataArgs{
    				Name: pulumi.String("string"),
    				Annotations: pulumi.StringMap{
    					"string": pulumi.String("string"),
    				},
    				Finalizers: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Labels: pulumi.StringMap{
    					"string": pulumi.String("string"),
    				},
    				Namespace: pulumi.String("string"),
    			},
    			Spec: &argocd.ApplicationSetSpecTemplateSpecArgs{
    				Destination: &argocd.ApplicationSetSpecTemplateSpecDestinationArgs{
    					Name:      pulumi.String("string"),
    					Namespace: pulumi.String("string"),
    					Server:    pulumi.String("string"),
    				},
    				Sources: argocd.ApplicationSetSpecTemplateSpecSourceArray{
    					&argocd.ApplicationSetSpecTemplateSpecSourceArgs{
    						RepoUrl: pulumi.String("string"),
    						Chart:   pulumi.String("string"),
    						Directory: &argocd.ApplicationSetSpecTemplateSpecSourceDirectoryArgs{
    							Exclude: pulumi.String("string"),
    							Include: pulumi.String("string"),
    							Jsonnet: &argocd.ApplicationSetSpecTemplateSpecSourceDirectoryJsonnetArgs{
    								ExtVars: argocd.ApplicationSetSpecTemplateSpecSourceDirectoryJsonnetExtVarArray{
    									&argocd.ApplicationSetSpecTemplateSpecSourceDirectoryJsonnetExtVarArgs{
    										Code:  pulumi.Bool(false),
    										Name:  pulumi.String("string"),
    										Value: pulumi.String("string"),
    									},
    								},
    								Libs: pulumi.StringArray{
    									pulumi.String("string"),
    								},
    								Tlas: argocd.ApplicationSetSpecTemplateSpecSourceDirectoryJsonnetTlaArray{
    									&argocd.ApplicationSetSpecTemplateSpecSourceDirectoryJsonnetTlaArgs{
    										Code:  pulumi.Bool(false),
    										Name:  pulumi.String("string"),
    										Value: pulumi.String("string"),
    									},
    								},
    							},
    							Recurse: pulumi.Bool(false),
    						},
    						Helm: &argocd.ApplicationSetSpecTemplateSpecSourceHelmArgs{
    							FileParameters: argocd.ApplicationSetSpecTemplateSpecSourceHelmFileParameterArray{
    								&argocd.ApplicationSetSpecTemplateSpecSourceHelmFileParameterArgs{
    									Name: pulumi.String("string"),
    									Path: pulumi.String("string"),
    								},
    							},
    							IgnoreMissingValueFiles: pulumi.Bool(false),
    							Parameters: argocd.ApplicationSetSpecTemplateSpecSourceHelmParameterArray{
    								&argocd.ApplicationSetSpecTemplateSpecSourceHelmParameterArgs{
    									ForceString: pulumi.Bool(false),
    									Name:        pulumi.String("string"),
    									Value:       pulumi.String("string"),
    								},
    							},
    							PassCredentials: pulumi.Bool(false),
    							ReleaseName:     pulumi.String("string"),
    							SkipCrds:        pulumi.Bool(false),
    							ValueFiles: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							Values:  pulumi.String("string"),
    							Version: pulumi.String("string"),
    						},
    						Kustomize: &argocd.ApplicationSetSpecTemplateSpecSourceKustomizeArgs{
    							CommonAnnotations: pulumi.StringMap{
    								"string": pulumi.String("string"),
    							},
    							CommonLabels: pulumi.StringMap{
    								"string": pulumi.String("string"),
    							},
    							Images: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							NamePrefix: pulumi.String("string"),
    							NameSuffix: pulumi.String("string"),
    							Patches: argocd.ApplicationSetSpecTemplateSpecSourceKustomizePatchArray{
    								&argocd.ApplicationSetSpecTemplateSpecSourceKustomizePatchArgs{
    									Target: &argocd.ApplicationSetSpecTemplateSpecSourceKustomizePatchTargetArgs{
    										AnnotationSelector: pulumi.String("string"),
    										Group:              pulumi.String("string"),
    										Kind:               pulumi.String("string"),
    										LabelSelector:      pulumi.String("string"),
    										Name:               pulumi.String("string"),
    										Namespace:          pulumi.String("string"),
    										Version:            pulumi.String("string"),
    									},
    									Options: pulumi.BoolMap{
    										"string": pulumi.Bool(false),
    									},
    									Patch: pulumi.String("string"),
    									Path:  pulumi.String("string"),
    								},
    							},
    							Version: pulumi.String("string"),
    						},
    						Path: pulumi.String("string"),
    						Plugin: &argocd.ApplicationSetSpecTemplateSpecSourcePluginArgs{
    							Envs: argocd.ApplicationSetSpecTemplateSpecSourcePluginEnvArray{
    								&argocd.ApplicationSetSpecTemplateSpecSourcePluginEnvArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    							Name: pulumi.String("string"),
    						},
    						Ref:            pulumi.String("string"),
    						TargetRevision: pulumi.String("string"),
    					},
    				},
    				IgnoreDifferences: argocd.ApplicationSetSpecTemplateSpecIgnoreDifferenceArray{
    					&argocd.ApplicationSetSpecTemplateSpecIgnoreDifferenceArgs{
    						Group: pulumi.String("string"),
    						JqPathExpressions: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						JsonPointers: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Kind: pulumi.String("string"),
    						ManagedFieldsManagers: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Name:      pulumi.String("string"),
    						Namespace: pulumi.String("string"),
    					},
    				},
    				Infos: argocd.ApplicationSetSpecTemplateSpecInfoArray{
    					&argocd.ApplicationSetSpecTemplateSpecInfoArgs{
    						Name:  pulumi.String("string"),
    						Value: pulumi.String("string"),
    					},