import { type AppProject } from "https://deno.land/x/kubernetes_apis@v0.5.3/argo-cd/argoproj.io@v1alpha1/structs.ts";
AppProject provides a logical grouping of applications, providing controls for: where the apps may deploy to (cluster whitelist) what may be deployed (repository whitelist, resource whitelist/blacklist) who can access these applications (roles, OIDC group claims bindings) and what they can do (RBAC policies) automation access to these roles (JWT tokens)
Properties
spec: { clusterResourceBlacklist?: Array<{ group: string; kind: string; }> | null; clusterResourceWhitelist?: Array<{ group: string; kind: string; }> | null; description?: string | null; destinations?: Array<{ name?: string | null; namespace?: string | null; server?: string | null; }> | null; namespaceResourceBlacklist?: Array<{ group: string; kind: string; }> | null; namespaceResourceWhitelist?: Array<{ group: string; kind: string; }> | null; orphanedResources?: { ignore?: Array<{ group?: string | null; kind?: string | null; name?: string | null; }> | null; warn?: boolean | null; } | null; permitOnlyProjectScopedClusters?: boolean | null; roles?: Array<{ description?: string | null; groups?: Array<string> | null; jwtTokens?: Array<{ exp?: number | null; iat: number; id?: string | null; }> | null; name: string; policies?: Array<string> | null; }> | null; signatureKeys?: Array<{ keyID: string; }> | null; sourceNamespaces?: Array<string> | null; sourceRepos?: Array<string> | null; syncWindows?: Array<{ applications?: Array<string> | null; clusters?: Array<string> | null; duration?: string | null; kind?: string | null; manualSync?: boolean | null; namespaces?: Array<string> | null; schedule?: string | null; timeZone?: string | null; }> | null; }