Kubernetes CRDs
kubefox.xigxog.io/v1alpha1
AppDeployment
AppDeployment is the Schema for the AppDeployments API
Field | Type | Description | Validation |
---|---|---|---|
apiVersion |
string | kubefox.xigxog.io/v1alpha1 |
|
kind |
string | AppDeployment |
|
metadata |
Refer to Kubernetes API documentation for fields of metadata . |
||
spec |
|||
status |
|||
details |
Environment
Field | Type | Description | Validation |
---|---|---|---|
apiVersion |
string | kubefox.xigxog.io/v1alpha1 |
|
kind |
string | Environment |
|
metadata |
Refer to Kubernetes API documentation for fields of metadata . |
||
spec |
|||
data |
|||
details |
HTTPAdapter
Field | Type | Description | Validation |
---|---|---|---|
apiVersion |
string | kubefox.xigxog.io/v1alpha1 |
|
kind |
string | HTTPAdapter |
|
metadata |
Refer to Kubernetes API documentation for fields of metadata . |
||
spec |
|||
details |
Platform
Platform is the Schema for the Platforms API
Field | Type | Description | Validation |
---|---|---|---|
apiVersion |
string | kubefox.xigxog.io/v1alpha1 |
|
kind |
string | Platform |
|
metadata |
Refer to Kubernetes API documentation for fields of metadata . |
||
spec |
|||
status |
|||
details |
ReleaseManifest
Field | Type | Description | Validation |
---|---|---|---|
apiVersion |
string | kubefox.xigxog.io/v1alpha1 |
|
kind |
string | ReleaseManifest |
|
metadata |
Refer to Kubernetes API documentation for fields of metadata . |
||
spec |
required |
||
data |
Data is the merged values of the Environment and VirtualEnvironment Data. |
required |
VirtualEnvironment
Field | Type | Description | Validation |
---|---|---|---|
apiVersion |
string | kubefox.xigxog.io/v1alpha1 |
|
kind |
string | VirtualEnvironment |
|
metadata |
Refer to Kubernetes API documentation for fields of metadata . |
||
spec |
|||
data |
|||
details |
|||
status |
Types
AppDeploymentDetails
AppDeploymentDetails defines additional details of AppDeployment
Used by:
- AppDeployment
- AppDeploymentManifest
Field | Type | Description | Validation |
---|---|---|---|
title |
string |
||
description |
string |
||
components |
map{string, Details} |
AppDeploymentManifest
Used by:
- ReleaseManifestSpec
Field | Type | Description | Validation |
---|---|---|---|
metadata |
Refer to Kubernetes API documentation for fields of metadata . |
required |
|
spec |
required |
||
details |
AppDeploymentSpec
AppDeploymentSpec defines the desired state of AppDeployment
Used by:
- AppDeployment
- AppDeploymentManifest
Field | Type | Description | Validation |
---|---|---|---|
appName |
string |
required |
|
version |
string |
Version of the defined App. Use of semantic versioning is recommended. Once set the AppDeployment spec becomes immutable. |
|
commit |
string |
required, pattern: ^[a-z0-9]{40}$ |
|
commitTime |
required |
||
branch |
string |
||
tag |
string |
||
repoURL |
string |
||
containerRegistry |
string |
||
imagePullSecretName |
string |
||
components |
map{string, ComponentDefinition} |
required |
AppDeploymentStatus
AppDeploymentStatus defines the observed state of AppDeployment
Used by:
- AppDeployment
Field | Type | Description | Validation |
---|---|---|---|
conditions |
Condition array |
||
problems |
BrokerSpec
Used by:
- PlatformSpec
Field | Type | Description | Validation |
---|---|---|---|
podSpec |
|||
containerSpec |
CollectorSpec
Used by:
- TelemetrySpec
Field | Type | Description | Validation |
---|---|---|---|
enabled |
boolean |
default: false |
|
address |
string |
ComponentDefinition
Used by:
- AppDeploymentSpec
Field | Type | Description | Validation |
---|---|---|---|
type |
enum[ DBAdapter , KubeFox , HTTPAdapter ] |
required |
|
routes |
RouteSpec array |
||
defaultHandler |
boolean |
||
envVarSchema |
|||
dependencies |
map{string, Dependency} |
||
hash |
string |
required, pattern: ^[a-z0-9]{32}$ |
|
image |
string |
ComponentStatus
Used by:
- PlatformStatus
Field | Type | Description | Validation |
---|---|---|---|
ready |
boolean |
||
name |
string |
||
hash |
string |
||
type |
|||
podName |
string |
||
podIP |
string |
||
nodeName |
string |
||
nodeIP |
string |
ContainerSpec
Used by:
- BrokerSpec
- HTTPSrvSpec
- NATSSpec
Field | Type | Description | Validation |
---|---|---|---|
resources |
Compute Resources required by this container. Cannot be updated. More info. |
||
livenessProbe |
Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info. |
||
readinessProbe |
Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info. |
||
startupProbe |
StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod's lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. More info. |
Data
Used by:
- Environment
- EnvironmentManifest
- ReleaseManifest
- VirtualEnvironment
- VirtualEnvironmentManifest
Field | Type | Description | Validation |
---|---|---|---|
vars |
map{string, Val} |
||
secrets |
map{string, Val} |
DataDetails
Used by:
- Environment
- EnvironmentManifest
- VirtualEnvironment
- VirtualEnvironmentManifest
Field | Type | Description | Validation |
---|---|---|---|
title |
string |
||
description |
string |
||
vars |
map{string, Details} |
||
secrets |
map{string, Details} |
DebugSpec
Used by:
- PlatformSpec
Field | Type | Description | Validation |
---|---|---|---|
enabled |
boolean |
default: false |
|
brokerAddr |
string |
Dependency
Used by:
- ComponentDefinition
Field | Type | Description | Validation |
---|---|---|---|
type |
enum[ DBAdapter , KubeFox , HTTPAdapter ] |
required |
Details
Used by:
- AppDeploymentDetails
- DataDetails
- HTTPAdapter
- HTTPAdapterManifest
- PlatformDetails
Field | Type | Description | Validation |
---|---|---|---|
title |
string |
||
description |
string |
EnvHistoryLimits
Used by:
- EnvReleasePolicy
Field | Type | Description | Validation |
---|---|---|---|
count |
integer |
Maximum number of Releases to keep in history. Once the limit is reached the oldest Release in history will be deleted. Age is based on archiveTime. Pointer is used to distinguish between not set and false. |
min: 0, default: 10 |
ageDays |
integer |
Maximum age of the Release to keep in history. Once the limit is reached the oldest Release in history will be deleted. Age is based on archiveTime. Set to 0 to disable. Pointer is used to distinguish between not set and false. |
min: 0 |
EnvReleasePolicy
Used by:
- EnvironmentSpec
Field | Type | Description | Validation |
---|---|---|---|
type |
enum[ Stable , Testing ] |
default: Stable |
|
activationDeadlineSeconds |
integer |
If the pending Release cannot be activated before the activation deadline it will be considered failed and the Release will automatically rolled back to the current active Release. Pointer is used to distinguish between not set and false. |
min: 3, default: 300 |
historyLimits |
EnvSchema
Used by:
- EnvTemplate
Field | Type | Description | Validation |
---|---|---|---|
vars |
|||
secrets |
EnvTemplate
Used by:
- HTTPAdapterTemplate
Field | Type | Description | Validation |
---|---|---|---|
template |
string |
||
envSchema |
|||
tree |
|||
parseErr |
EnvironmentManifest
Used by:
- ReleaseManifestSpec
Field | Type | Description | Validation |
---|---|---|---|
metadata |
Refer to Kubernetes API documentation for fields of metadata . |
required |
|
spec |
|||
data |
|||
details |
EnvironmentSpec
Used by:
- Environment
- EnvironmentManifest
Field | Type | Description | Validation |
---|---|---|---|
releasePolicy |
EventsSpec
Used by:
- PlatformSpec
Field | Type | Description | Validation |
---|---|---|---|
timeoutSeconds |
integer |
min: 3, default: 30 |
|
maxSize |
Large events reduce performance and increase memory usage. Default 5Mi. Maximum 16Mi. |
default: 5242880 |
HTTPAdapterManifest
Used by:
- ReleaseManifestAdapters
Field | Type | Description | Validation |
---|---|---|---|
metadata |
Refer to Kubernetes API documentation for fields of metadata . |
required |
|
spec |
required |
||
details |
HTTPAdapterSpec
Used by:
- HTTPAdapter
- HTTPAdapterManifest
Field | Type | Description | Validation |
---|---|---|---|
url |
string |
required, minLength: 1 |
|
headers |
map{string, string} |
||
insecureSkipVerify |
boolean |
InsecureSkipVerify controls whether the Adapter verifies the server's certificate chain and host name. If InsecureSkipVerify is true, any certificate presented by the server and any host name in that certificate is accepted. In this mode, TLS is susceptible to machine-in-the-middle attacks. |
default: false |
followRedirects |
enum[ Never , Always , SameHost ] |
default: Never |
HTTPSrvPorts
Used by:
- HTTPSrvService
Field | Type | Description | Validation |
---|---|---|---|
http |
integer |
min: 1, max: 65535, default: 80 |
|
https |
integer |
min: 1, max: 65535, default: 443 |
HTTPSrvService
Used by:
- HTTPSrvSpec
Field | Type | Description | Validation |
---|---|---|---|
type |
enum[ ClusterIP , NodePort , LoadBalancer ] |
default: ClusterIP |
|
ports |
|||
labels |
map{string, string} |
Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info. |
|
annotations |
map{string, string} |
Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info. |
HTTPSrvSpec
Used by:
- PlatformSpec
Field | Type | Description | Validation |
---|---|---|---|
podSpec |
|||
containerSpec |
|||
service |
LogsSpec
Used by:
- TelemetrySpec
Field | Type | Description | Validation |
---|---|---|---|
level |
enum[ debug , info , warn , error ] |
default: info |
|
format |
enum[ json , console ] |
default: json |
MetricsSpec
Used by:
- TelemetrySpec
Field | Type | Description | Validation |
---|---|---|---|
export |
boolean |
default: true |
|
verbose |
boolean |
default: false |
|
collectionIntervalSeconds |
integer |
min: 3, default: 60 |
NATSSpec
Used by:
- PlatformSpec
Field | Type | Description | Validation |
---|---|---|---|
podSpec |
|||
containerSpec |
ObjectRef
Used by:
- AppDeploymentManifest
- EnvironmentManifest
- HTTPAdapterManifest
- VirtualEnvironmentManifest
Field | Type | Description | Validation |
---|---|---|---|
namespace |
string |
||
name |
string |
||
uid |
required |
||
resourceVersion |
string |
required, minLength: 1 |
|
generation |
integer |
required |
PlatformDetails
PlatformDetails defines additional details of Platform
Used by:
- Platform
Field | Type | Description | Validation |
---|---|---|---|
title |
string |
||
description |
string |
PlatformSpec
PlatformSpec defines the desired state of Platform
Used by:
- Platform
Field | Type | Description | Validation |
---|---|---|---|
events |
|||
broker |
|||
httpsrv |
|||
nats |
|||
telemetry |
|||
imagePullPolicy |
enum[ Always , IfNotPresent , Never ] |
default: IfNotPresent |
|
debug |
PlatformStatus
PlatformStatus defines the observed state of Platform
Used by:
- Platform
Field | Type | Description | Validation |
---|---|---|---|
components |
ComponentStatus array |
||
conditions |
Condition array |
PodSpec
Used by:
- BrokerSpec
- HTTPSrvSpec
- NATSSpec
Field | Type | Description | Validation |
---|---|---|---|
labels |
map{string, string} |
Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info. |
|
annotations |
map{string, string} |
Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info. |
|
nodeSelector |
map{string, string} |
NodeSelector is a selector which must be true for the pod to fit on a node. Selector which must match a node's labels for the pod to be scheduled on that node. More info. |
|
nodeName |
string |
NodeName is a request to schedule this pod onto a specific node. If it is non-empty, the scheduler simply schedules this pod onto that node, assuming that it fits resource requirements. |
|
affinity |
If specified, the pod's scheduling constraints |
||
tolerations |
Toleration array |
If specified, the pod's tolerations. |
Problem
ObservedTime is added here instead of api package to prevent k8s.io dependencies from getting pulled into Kit.
Used by:
- ReleaseStatus
Field | Type | Description | Validation |
---|---|---|---|
type |
required |
||
message |
string |
required |
|
causes |
ProblemSource array |
Resources and attributes causing problem. |
|
observedTime |
ObservedTime at which the problem was recorded. |
ProblemSource
Field | Type | Description | Validation |
---|---|---|---|
kind |
required |
||
name |
string |
||
observedGeneration |
integer |
ObservedGeneration represents the .metadata.generation of the ProblemSource that the problem was generated from. For instance, if the ProblemSource .metadata.generation is currently 12, but the observedGeneration is 9, the problem is out of date with respect to the current state of the instance. |
|
path |
string |
Path of source object attribute causing problem. |
|
value |
string |
Value causing problem. Pointer is used to distinguish between not set and empty string. |
Release
Used by:
- ReleaseStatus
- VirtualEnvironmentSpec
Field | Type | Description | Validation |
---|---|---|---|
apps |
map{string, ReleaseApp} |
required |
ReleaseManifestAdapters
Used by:
- ReleaseManifestSpec
Field | Type | Description | Validation |
---|---|---|---|
http |
HTTPAdapterManifest array |
ReleaseManifestSpec
Used by:
- ReleaseManifest
Field | Type | Description | Validation |
---|---|---|---|
releaseId |
string |
required, minLength: 1 |
|
environment |
required |
||
virtualEnvironment |
required |
||
appDeployments |
AppDeploymentManifest array |
required |
|
adapters |
ReleasePolicy
Used by:
- VirtualEnvironmentSpec
Field | Type | Description | Validation |
---|---|---|---|
type |
enum[ Stable , Testing ] |
||
activationDeadlineSeconds |
integer |
If the pending Release cannot be activated before the activation deadline it will be considered failed and the Release will automatically rolled back to the current active Release. Pointer is used to distinguish between not set and false. |
min: 3 |
historyLimits |
ReleaseStatus
Used by:
- VirtualEnvironmentStatus
Field | Type | Description | Validation |
---|---|---|---|
apps |
map{string, ReleaseApp} |
required |
|
id |
string |
required, minLength: 1 |
|
releaseManifest |
string |
||
requestTime |
Time at which the VirtualEnvironment was updated to use the Release. |
||
activationTime |
Time at which the Release became active. If not set the Release was never activated. |
||
archiveTime |
Time at which the Release was archived to history. |
||
archiveReason |
enum[ PendingDeadlineExceeded , RolledBack , Superseded ] |
Reason Release was archived. |
|
problems |
Problem array |
RouteSpec
Used by:
- ComponentDefinition
Field | Type | Description | Validation |
---|---|---|---|
id |
integer |
required |
|
rule |
string |
required |
|
priority |
integer |
||
envVarSchema |
TelemetrySpec
Used by:
- PlatformSpec
Field | Type | Description | Validation |
---|---|---|---|
collector |
|||
logs |
|||
metrics |
|||
traces |
TracesSpec
Used by:
- TelemetrySpec
Field | Type | Description | Validation |
---|---|---|---|
export |
boolean |
default: true |
|
verbose |
boolean |
default: false |
Val
Used by:
- Data
VirtualEnvironmentManifest
Used by:
- ReleaseManifestSpec
Field | Type | Description | Validation |
---|---|---|---|
metadata |
Refer to Kubernetes API documentation for fields of metadata . |
required |
|
spec |
|||
data |
|||
details |
VirtualEnvironmentSpec
Used by:
- VirtualEnvironment
- VirtualEnvironmentManifest
Field | Type | Description | Validation |
---|---|---|---|
environment |
string |
Name of the Environment this VirtualEnvironment is part of. This field is immutable. |
required, minLength: 1 |
release |
|||
releasePolicy |
VirtualEnvironmentStatus
Used by:
- VirtualEnvironment
Field | Type | Description | Validation |
---|---|---|---|
dataChecksum |
string |
DataChecksum is a hash value of the Data object. The Environment Data object is merged before the hash is created. It can be used to check for changes to the Data object. |
|
pendingReleaseFailed |
boolean |
||
activeRelease |
|||
pendingRelease |
|||
releaseHistory |
ReleaseStatus array |
||
conditions |
Condition array |