{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/argo-cd/refs/heads/main/json-schema/argo-cd-v1alpha1-app-project-spec-schema.json", "title": "v1alpha1AppProjectSpec", "description": "v1alpha1AppProjectSpec schema from Argo CD API", "type": "object", "properties": { "clusterResourceBlacklist": { "type": "array", "title": "ClusterResourceBlacklist contains list of blacklisted cluster level resources", "items": { "$ref": "#/definitions/v1alpha1ClusterResourceRestrictionItem" } }, "clusterResourceWhitelist": { "type": "array", "title": "ClusterResourceWhitelist contains list of whitelisted cluster level resources", "items": { "$ref": "#/definitions/v1alpha1ClusterResourceRestrictionItem" } }, "description": { "type": "string", "title": "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", "title": "Destinations contains list of destinations available for deployment", "items": { "$ref": "#/definitions/v1alpha1ApplicationDestination" } }, "namespaceResourceBlacklist": { "type": "array", "title": "NamespaceResourceBlacklist contains list of blacklisted namespace level resources", "items": { "$ref": "#/definitions/v1GroupKind" } }, "namespaceResourceWhitelist": { "type": "array", "title": "NamespaceResourceWhitelist contains list of whitelisted namespace level resources", "items": { "$ref": "#/definitions/v1GroupKind" } }, "orphanedResources": { "$ref": "#/definitions/v1alpha1OrphanedResourcesMonitorSettings" }, "permitOnlyProjectScopedClusters": { "type": "boolean", "title": "PermitOnlyProjectScopedClusters determines whether destinations can only reference clusters which are project-scoped" }, "roles": { "type": "array", "title": "Roles are user defined RBAC roles associated with this project", "items": { "$ref": "#/definitions/v1alpha1ProjectRole" } }, "signatureKeys": { "type": "array", "title": "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", "title": "SourceNamespaces defines the namespaces application resources are allowed to be created in", "items": { "type": "string" } }, "sourceRepos": { "type": "array", "title": "SourceRepos contains list of repository URLs which can be used for deployment", "items": { "type": "string" } }, "syncWindows": { "type": "array", "title": "SyncWindows controls when syncs can be run for apps in this project", "items": { "$ref": "#/definitions/v1alpha1SyncWindow" } } } }