Argo CD · JSON Structure

Argo Cd V1Alpha1 App Project Spec Structure

v1alpha1AppProjectSpec schema from Argo CD API

Type: object Properties: 14
Continuous DeliveryContainersDeploymentGitOpsKubernetesCNCFOpen Source

v1alpha1AppProjectSpec is a JSON Structure definition published by Argo CD, describing 14 properties. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

clusterResourceBlacklist clusterResourceWhitelist description destinationServiceAccounts destinations namespaceResourceBlacklist namespaceResourceWhitelist orphanedResources permitOnlyProjectScopedClusters roles signatureKeys sourceNamespaces sourceRepos syncWindows

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/argo-cd/refs/heads/main/json-structure/argo-cd-v1alpha1-app-project-spec-structure.json",
  "name": "v1alpha1AppProjectSpec",
  "description": "v1alpha1AppProjectSpec schema from Argo CD API",
  "type": "object",
  "properties": {
    "clusterResourceBlacklist": {
      "type": "array",
      "name": "ClusterResourceBlacklist contains list of blacklisted cluster level resources",
      "items": {
        "$ref": "#/definitions/v1alpha1ClusterResourceRestrictionItem"
      }
    },
    "clusterResourceWhitelist": {
      "type": "array",
      "name": "ClusterResourceWhitelist contains list of whitelisted cluster level resources",
      "items": {
        "$ref": "#/definitions/v1alpha1ClusterResourceRestrictionItem"
      }
    },
    "description": {
      "type": "string",
      "name": "Description contains optional project description\n+kubebuilder:validation:MaxLength=255"
    },
    "destinationServiceAccounts": {
      "description": "DestinationServiceAccounts holds information about the service accounts to be impersonated for the application sync operation for each destination.",
      "type": "array",
      "items": {
        "$ref": "#/definitions/v1alpha1ApplicationDestinationServiceAccount"
      }
    },
    "destinations": {
      "type": "array",
      "name": "Destinations contains list of destinations available for deployment",
      "items": {
        "$ref": "#/definitions/v1alpha1ApplicationDestination"
      }
    },
    "namespaceResourceBlacklist": {
      "type": "array",
      "name": "NamespaceResourceBlacklist contains list of blacklisted namespace level resources",
      "items": {
        "$ref": "#/definitions/v1GroupKind"
      }
    },
    "namespaceResourceWhitelist": {
      "type": "array",
      "name": "NamespaceResourceWhitelist contains list of whitelisted namespace level resources",
      "items": {
        "$ref": "#/definitions/v1GroupKind"
      }
    },
    "orphanedResources": {
      "$ref": "#/definitions/v1alpha1OrphanedResourcesMonitorSettings"
    },
    "permitOnlyProjectScopedClusters": {
      "type": "boolean",
      "name": "PermitOnlyProjectScopedClusters determines whether destinations can only reference clusters which are project-scoped"
    },
    "roles": {
      "type": "array",
      "name": "Roles are user defined RBAC roles associated with this project",
      "items": {
        "$ref": "#/definitions/v1alpha1ProjectRole"
      }
    },
    "signatureKeys": {
      "type": "array",
      "name": "SignatureKeys contains a list of PGP key IDs that commits in Git must be signed with in order to be allowed for sync",
      "items": {
        "$ref": "#/definitions/v1alpha1SignatureKey"
      }
    },
    "sourceNamespaces": {
      "type": "array",
      "name": "SourceNamespaces defines the namespaces application resources are allowed to be created in",
      "items": {
        "type": "string"
      }
    },
    "sourceRepos": {
      "type": "array",
      "name": "SourceRepos contains list of repository URLs which can be used for deployment",
      "items": {
        "type": "string"
      }
    },
    "syncWindows": {
      "type": "array",
      "name": "SyncWindows controls when syncs can be run for apps in this project",
      "items": {
        "$ref": "#/definitions/v1alpha1SyncWindow"
      }
    }
  }
}