API Reference

Packages

idpbuilder.cnoe.io/v1alpha1

Resource Types

ArgoCDPackageSpec

Appears in:

Field Description Default Validation
applicationFile string ApplicationFile specifies the absolute path to the ArgoCD application file
name string
namespace string
type string Enum: [Application ApplicationSet]

ArgoCDStatus

Appears in:

Field Description Default Validation
available boolean
appsCreated boolean

ArgoPackageConfigSpec

ArgoPackageConfigSpec Allows for configuration of the ArgoCD Installation. If no fields are specified then the binary embedded resources will be used to install ArgoCD.

Appears in:

Field Description Default Validation
enabled boolean Enabled controls whether to install ArgoCD.

BuildCustomizationSpec

BuildCustomizationSpec fields cannot change once a cluster is created

Appears in:

Field Description Default Validation
protocol string
host string
ingressHost string
port string
usePathRouting boolean
selfSignedCert string
staticPassword boolean

Commit

Appears in:

Field Description Default Validation
hash string Hash is the digest of the most recent commit Optional: {}

CustomPackage

Field Description Default Validation
apiVersion string idpbuilder.cnoe.io/v1alpha1
kind string CustomPackage
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec CustomPackageSpec
status CustomPackageStatus

CustomPackageSpec

CustomPackageSpec controls the installation of the custom applications.

Appears in:

Field Description Default Validation
argoCD ArgoCDPackageSpec
platformRef PlatformReference PlatformRef references the Platform resource to use for git provider configuration.
If not specified, the controller will look for a Platform named "platform" in the same namespace.
If no Platform is found, it falls back to the GitServerURL and InternalGitServeURL fields.
gitServerURL string GitServerURL specifies the base URL for the git server for API calls.
for example, https://gitea.cnoe.localtest.me:8443
Deprecated: Use PlatformRef instead. This field is kept for backward compatibility.
gitServerAuthSecretRef SecretReference
internalGitServeURL string InternalGitServeURL specifies the base URL for the git server accessible within the cluster.
for example, http://my-gitea-http.gitea.svc.cluster.local:3000
Deprecated: Use PlatformRef instead. This field is kept for backward compatibility.
remoteRepository RemoteRepositorySpec
replicate boolean Replicate specifies whether to replicate remote or local contents to the local gitea server. false

CustomPackageStatus

Appears in:

Field Description Default Validation
synced boolean A Custom package is considered synced when the in-cluster repository url is set as the repository URL
This only applies for a package that references local directories
gitRepositoryRefs ObjectRef array

EmbeddedArgoApplicationsPackageConfigSpec

EmbeddedArgoApplicationsPackageConfigSpec Controls the installation of the embedded argo applications.

Appears in:

Field Description Default Validation
enabled boolean Enabled controls whether to install the embedded argo applications and the associated GitServer

GitRepository

Field Description Default Validation
apiVersion string idpbuilder.cnoe.io/v1alpha1
kind string GitRepository
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec GitRepositorySpec
status GitRepositoryStatus

GitRepositorySource

Appears in:

Field Description Default Validation
embeddedAppName string Enum: [argocd gitea nginx]
Optional: {}
path string Path is the absolute path to directory that contains Kustomize structure or raw manifests.
This is required when Type is set to local.
Optional: {}
remoteRepository RemoteRepositorySpec
type string Type is the source type. embedded Enum: [local embedded remote]

GitRepositorySpec

Appears in:

Field Description Default Validation
customization PackageCustomization Optional: {}
secretRef SecretReference SecretRef is the reference to secret that contain Git server credentials Optional: {}
source GitRepositorySource
provider Provider

GitRepositoryStatus

Appears in:

Field Description Default Validation
commit Commit LatestCommit is the most recent commit known to the controller Optional: {}
externalGitRepositoryUrl string ExternalGitRepositoryUrl is the url for the in-cluster repository accessible from local machine. Optional: {}
internalGitRepositoryUrl string InternalGitRepositoryUrl is the url for the in-cluster repository accessible within the cluster. Optional: {}
path string Path is the path within the repository that contains the files. Optional: {}
synced boolean

GiteaStatus

Appears in:

Field Description Default Validation
available boolean
externalURL string
internalURL string
adminUserSecretNameecret string
adminUserSecretNamespace string

Localbuild

Field Description Default Validation
apiVersion string idpbuilder.cnoe.io/v1alpha1
kind string Localbuild
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec LocalbuildSpec
status LocalbuildStatus

LocalbuildSpec

Appears in:

Field Description Default Validation
packageConfigs PackageConfigsSpec
buildCustomization BuildCustomizationSpec

LocalbuildStatus

Appears in:

Field Description Default Validation
observedGeneration integer ObservedGeneration is the 'Generation' of the Service that was last processed by the controller.
ArgoCD ArgoCDStatus
nginx NginxStatus
gitea GiteaStatus

NginxStatus

Appears in:

Field Description Default Validation
available boolean

ObjectRef

Appears in:

Field Description Default Validation
apiVersion string
name string
namespace string
kind string
uid string

PackageConfigsSpec

Appears in:

Field Description Default Validation
argoPackageConfigs ArgoPackageConfigSpec
embeddedArgoApplicationsPackageConfigs EmbeddedArgoApplicationsPackageConfigSpec
customPackageFiles string array
customPackageDirs string array
customPackageUrls string array
packageCustomization object (keys:string, values:PackageCustomization) Optional: {}

PackageCustomization

PackageCustomization defines how packages are customized

Appears in:

Field Description Default Validation
name string Name is the name of the package to be customized. e.g. argocd
filePath string FilePath is the absolute file path to a YAML file that contains Kubernetes manifests.

PlatformReference

PlatformReference references a Platform resource

Appears in:

Field Description Default Validation
name string Name is the name of the Platform resource Required: {}
namespace string Namespace is the namespace of the Platform resource.
If not specified, defaults to the same namespace as the CustomPackage.

Provider

Appears in:

Field Description Default Validation
name string Enum: [gitea github]
Required: {}
gitURL string GitURL is the base URL of Git server used for API calls. Pattern: ^https?:\/\/.+$
Required: {}
internalGitURL string InternalGitURL is the base URL of Git server accessible within the cluster only.
organizationName string

RemoteRepositorySpec

RemoteRepositorySpec specifies information about remote repositories.

Appears in:

Field Description Default Validation
cloneSubmodules boolean
path string
url string Url specifies the url to the repository containing the ArgoCD application file
ref string Ref specifies the specific ref supported by git fetch

SecretReference

Appears in:

Field Description Default Validation
name string
namespace string

idpbuilder.cnoe.io/v1alpha2

Resource Types

ArgoCDAdminCredentials

ArgoCDAdminCredentials defines the admin credentials configuration for ArgoCD

Appears in:

Field Description Default Validation
secretRef SecretReference SecretRef references a secret containing the admin credentials
autoGenerate boolean AutoGenerate indicates whether to auto-generate credentials if not provided true

ArgoCDProject

ArgoCDProject defines an ArgoCD project to create

Appears in:

Field Description Default Validation
name string Name is the project name Required: {}
description string Description is the project description

ArgoCDProvider

ArgoCDProvider is the Schema for the argocdproviders API

Field Description Default Validation
apiVersion string idpbuilder.cnoe.io/v1alpha2
kind string ArgoCDProvider
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec ArgoCDProviderSpec
status ArgoCDProviderStatus

ArgoCDProviderSpec

ArgoCDProviderSpec defines the desired state of ArgoCDProvider

Appears in:

Field Description Default Validation
namespace string Namespace is the namespace where ArgoCD will be deployed argocd Required: {}
version string Version is the version of ArgoCD to install v2.12.0
adminCredentials ArgoCDAdminCredentials AdminCredentials defines the ArgoCD admin credentials configuration
projects ArgoCDProject array Projects is a list of ArgoCD projects to create

ArgoCDProviderStatus

ArgoCDProviderStatus defines the observed state of ArgoCDProvider

Appears in:

Field Description Default Validation
conditions Condition array Conditions represent the latest available observations of the ArgoCDProvider's state
endpoint string Endpoint is the external URL for ArgoCD web UI
This is a duck-typed field that all GitOps providers must expose
internalEndpoint string InternalEndpoint is the cluster-internal URL for ArgoCD API access
This is a duck-typed field that all GitOps providers must expose
credentialsSecretRef SecretReference CredentialsSecretRef references the secret containing ArgoCD admin credentials
This is a duck-typed field that all GitOps providers must expose
installed boolean Installed indicates whether ArgoCD has been installed
version string Version is the currently installed version of ArgoCD
phase string Phase represents the current phase of the ArgoCD provider (e.g., Pending, Installing, Ready, Failed)

GiteaAdminUser

GiteaAdminUser defines the admin user configuration for Gitea

Appears in:

Field Description Default Validation
username string Username is the admin username giteaAdmin
email string Email is the admin user email admin@cnoe.localtest.me
passwordSecretRef SecretReference PasswordSecretRef references a secret containing the admin password
autoGenerate boolean AutoGenerate indicates whether to auto-generate credentials if not provided true

GiteaAdminUserStatus

GiteaAdminUserStatus contains status information about the Gitea admin user

Appears in:

Field Description Default Validation
username string Username is the admin username
secretRef SecretReference SecretRef references the secret containing admin credentials

GiteaOrganization

GiteaOrganization defines a Gitea organization to create

Appears in:

Field Description Default Validation
name string Name is the organization name Required: {}
description string Description is the organization description

GiteaProvider

GiteaProvider is the Schema for the giteaproviders API

Field Description Default Validation
apiVersion string idpbuilder.cnoe.io/v1alpha2
kind string GiteaProvider
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec GiteaProviderSpec
status GiteaProviderStatus

GiteaProviderSpec

GiteaProviderSpec defines the desired state of GiteaProvider

Appears in:

Field Description Default Validation
namespace string Namespace is the namespace where Gitea will be deployed gitea Required: {}
version string Version is the version of Gitea to install 1.24.3
protocol string Protocol is the protocol to use for Gitea endpoint (http or https) http
host string Host is the hostname for Gitea endpoint cnoe.localtest.me
port string Port is the port for Gitea endpoint 8080
usePathRouting boolean UsePathRouting indicates whether to use path-based routing false
adminUser GiteaAdminUser AdminUser defines the Gitea admin user configuration
organizations GiteaOrganization array Organizations is a list of Gitea organizations to create

GiteaProviderStatus

GiteaProviderStatus defines the observed state of GiteaProvider

Appears in:

Field Description Default Validation
conditions Condition array Conditions represent the latest available observations of the GiteaProvider's state
endpoint string Endpoint is the external URL for Gitea web UI and cloning
This is a duck-typed field that all Git providers must expose
internalEndpoint string InternalEndpoint is the cluster-internal URL for Gitea API access
This is a duck-typed field that all Git providers must expose
credentialsSecretRef SecretReference CredentialsSecretRef references the secret containing Gitea credentials
This is a duck-typed field that all Git providers must expose
installed boolean Installed indicates whether Gitea has been installed
version string Version is the currently installed version of Gitea
phase string Phase represents the current phase of the Gitea provider (e.g., Pending, Installing, Ready, Failed)
adminUser GiteaAdminUserStatus AdminUser contains information about the admin user

NginxControllerStatus

NginxControllerStatus contains status information about the Nginx controller

Appears in:

Field Description Default Validation
replicas integer Replicas is the desired number of replicas
readyReplicas integer ReadyReplicas is the number of ready replicas

NginxGateway

NginxGateway is the Schema for the nginxgateways API

Field Description Default Validation
apiVersion string idpbuilder.cnoe.io/v1alpha2
kind string NginxGateway
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec NginxGatewaySpec
status NginxGatewayStatus

NginxGatewaySpec

NginxGatewaySpec defines the desired state of NginxGateway

Appears in:

Field Description Default Validation
namespace string Namespace is the namespace where Nginx Ingress Controller will be deployed ingress-nginx Required: {}
version string Version is the version of Nginx Ingress Controller to install 1.13.0
ingressClass NginxIngressClass IngressClass defines the ingress class configuration

NginxGatewayStatus

NginxGatewayStatus defines the observed state of NginxGateway

Appears in:

Field Description Default Validation
conditions Condition array Conditions represent the latest available observations of the NginxGateway's state
ingressClassName string IngressClassName is the name of the ingress class to use in Ingress resources
This is a duck-typed field that all Gateway providers must expose
loadBalancerEndpoint string LoadBalancerEndpoint is the external endpoint for accessing services
This is a duck-typed field that all Gateway providers must expose
internalEndpoint string InternalEndpoint is the cluster-internal API endpoint
This is a duck-typed field that all Gateway providers must expose
installed boolean Installed indicates whether Nginx has been installed
version string Version is the currently installed version of Nginx
phase string Phase represents the current phase of the Nginx gateway (e.g., Pending, Installing, Ready, Failed)
controller NginxControllerStatus Controller contains information about the Nginx controller deployment

NginxIngressClass

NginxIngressClass defines the ingress class configuration

Appears in:

Field Description Default Validation
name string Name is the name of the ingress class nginx
isDefault boolean IsDefault indicates if this should be the default ingress class true

Platform

Platform is the Schema for the platforms API

Field Description Default Validation
apiVersion string idpbuilder.cnoe.io/v1alpha2
kind string Platform
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec PlatformSpec
status PlatformStatus

PlatformComponents

PlatformComponents defines the components that make up the platform

Appears in:

Field Description Default Validation
gitProviders ProviderReference array GitProviders is a list of Git provider references
gateways ProviderReference array Gateways is a list of Gateway provider references
gitOpsProviders ProviderReference array GitOpsProviders is a list of GitOps provider references

PlatformProviderStatus

PlatformProviderStatus contains aggregated status from all providers

Appears in:

Field Description Default Validation
gitProviders ProviderStatusSummary array GitProviders contains status of Git providers
gateways ProviderStatusSummary array Gateways contains status of Gateway providers
gitOpsProviders ProviderStatusSummary array GitOpsProviders contains status of GitOps providers

PlatformSpec

PlatformSpec defines the desired state of Platform

Appears in:

Field Description Default Validation
domain string Domain is the base domain for the platform Required: {}
components PlatformComponents Components defines the platform component configuration Required: {}

PlatformStatus

PlatformStatus defines the observed state of Platform

Appears in:

Field Description Default Validation
conditions Condition array Conditions represent the latest available observations of the Platform's state
providers PlatformProviderStatus Providers contains the aggregated status of all provider references
observedGeneration integer ObservedGeneration reflects the generation of the most recently observed Platform
phase string Phase represents the current phase of the Platform (e.g., Pending, Ready, Failed)

ProviderReference

ProviderReference references a provider CR by name, kind, and namespace

Appears in:

Field Description Default Validation
name string Name is the name of the provider CR Required: {}
kind string Kind is the kind of the provider CR (e.g., GiteaProvider, NginxGateway) Required: {}
namespace string Namespace is the namespace of the provider CR Required: {}

ProviderStatusSummary

ProviderStatusSummary summarizes the status of a provider

Appears in:

Field Description Default Validation
name string Name is the name of the provider
kind string Kind is the kind of the provider
ready boolean Ready indicates whether the provider is ready
message string Message contains the message from the Ready condition
reason string Reason contains the reason from the Ready condition

SecretReference

SecretReference references a Kubernetes Secret

Appears in:

Field Description Default Validation
name string Name is the name of the secret Required: {}
namespace string Namespace is the namespace of the secret Required: {}
key string Key is the key within the secret Required: {}