
default project. AppProjects let you narrow that scope using rules such as:
| Field | Purpose |
|---|---|
| sourceRepos | Which Git repositories application manifests may come from (patterns allowed). |
| destinations | Which clusters and namespaces applications may be deployed to (server + namespace). |
| clusterResourceWhitelist | Which cluster-scoped resource kinds (group/kind) the project’s apps are allowed to manage. |
| roles | Role-based permissions for users and automation acting on applications in the project. |
| syncWindows | Time windows that allow or block automated syncs for applications in the project. |
Create AppProjects for each team or environment to enforce least privilege and reduce the blast radius of potential mistakes or compromise.
default project:
- clusterResourceWhitelist: A list of cluster-scoped resource kinds (group/kind) that applications in this project are allowed to manage. The default allows all cluster resources.
- destinations: A list of allowed destinations (server and namespace) where applications may be deployed. The default allows any cluster/namespace.
- sourceRepos: A list of allowed Git repositories (patterns) that can be used as the source for applications in this project. The default allows any repo.
The default AppProject is permissive (allows all repos, namespaces, and cluster resources). Always create scoped AppProjects for teams and production environments to prevent unauthorized access or accidental changes across clusters.