API Reference
This page includes the full API documentation of the Kuberik project.
Kuberik Core
Core resource controllers enable deploying Kustomize layers from git in the simplest ways possible.
Resource Types:
Live
Live is deploying a single Kustomize layer from a commit in a git repository.
WARNING
It is recommended that users create Lives only through a Controller, and not directly. See Controllers: LiveDeployment, LiveDeploymentGroup.
| Field | Description |
|---|---|
apiVersionstring | kuberik.io/v1alpha1 |
kindstring | Live |
metadataObjectMeta | No description provided. Refer to the Kubernetes API documentation for the fields of the metadata field. |
specLiveSpec | Specification of the desired behavior of the Live. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
statusLiveStatus | Most recently observed status of the Live. This data may not be up to date. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
LiveDeployment
LiveDeployment is continously deploying a single Kustomize layer from a branch every time the tip of the branch updates.
| Field | Description |
|---|---|
apiVersionstring | kuberik.io/v1alpha1 |
kindstring | LiveDeployment |
metadataObjectMeta | No description provided. Refer to the Kubernetes API documentation for the fields of the metadata field. |
specLiveDeploymentSpec | Specification of the desired behavior of the LiveDeployment. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
statusLiveDeploymentStatus | Most recently observed status of the LiveDeployment. This data may not be up to date. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
LiveDeploymentGroup
LiveDeploymentGroup is deploying multiple Kustomize layers, each from the same path but from a different branch of a git repository.
Example
<!-- @include: ../../../manifests/ci/all-branches/ci.yaml -->
| Field | Description |
|---|---|
apiVersionstring | kuberik.io/v1alpha1 |
kindstring | LiveDeploymentGroup |
metadataObjectMeta | No description provided. Refer to the Kubernetes API documentation for the fields of the metadata field. |
specLiveDeploymentGroupSpec | Specification of the desired behavior of the LiveDeploymentGroup. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
statusLiveDeploymentGroupStatus | Most recently observed status of the LiveDeploymentGroup. This data may not be up to date. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
Definitions
This section contains definitions for objects used in the Kuberik Core API.
LiveDeploymentGroupSpec
Appears in:
LiveDeploymentGroupSpec defines the desired state of LiveDeploymentGroup
| Field | Description |
|---|---|
branchMatchstring | Regex pattern used to match branches that will be deployed |
templateLiveTemplate | Template of the created Live resources that will be used to deploy latest commit from each matching branch. |
pollIntervalSecondsint32 | The duration in seconds between each fetching of the git repository. |
LiveDeploymentGroupStatus
Appears in:
LiveDeploymentGroupStatus defines the observed state of LiveDeploymentGroup
LiveDeploymentSpec
Appears in:
LiveDeploymentSpec defines the desired state of LiveDeployment
| Field | Description |
|---|---|
branchstring | Branch of the git repository specified in the Live template that will be continuously deployed. |
templateLiveTemplate | Template of the created Live resource that will be used to deploy latest commit from the specified branch. |
pollIntervalSecondsint32 | The duration of seconds between each fetching of the git repository. |
LiveDeploymentStatus
Appears in:
LiveDeploymentStatus defines the observed state of LiveDeployment
LiveSpec
Appears in:
LiveSpec defines the desired state of Live
| Field | Description |
|---|---|
pathstring | Relative path of the kustomize layer within the specified git repository which will be applied to the cluster. |
commitstring | Commit of the git repository that will be checked out to deploy kustomize layer from. |
repositoryRepository | Git repository containing the kustomize layer that needs to be deployed |
interruptiblebool | Interruptible defines if the Live can be updated while it is already actively reconciling |
transformersstring | Transformers define kustomize transformer layer which will be used to transform the specified kustomize layer. The path specified needs to be relative path in the git repository. Live object will be included in the Kustomize layers with annotation config.kubernetes.io/local-config=true so that the transformers (most notably builtin ReplacementTransformer) can use the information from the Live objects (such as git commit hash). |
serviceAccountNamestring | Name of the ServiceAccount to use for deploying the resources. |
LiveStatus
Appears in:
LiveStatus defines the observed state of Live
| Field | Description |
|---|---|
conditions[]Condition | Conditions is a list of conditions on the Live resource |
retriesint | Number of consecutive apply attempts that resulted in a failure |
LiveTemplate
Appears in:
LiveTemplate describes a Live that will be created
| Field | Description |
|---|---|
metadataObjectMeta | Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadataRefer to the Kubernetes API documentation for the fields of the metadata field. |
specLiveSpec | Specification of the desired behavior of the Live. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
Repository
Appears in:
Repository specifies details of a git repository
| Field | Description |
|---|---|
urlstring | URL of the git repository |
authRepositoryAuth | Authentication configuration for the git repository |
RepositoryAuth
Appears in:
RepositoryAuth defines authentication configuration for a git repository
| Field | Description |
|---|---|
secretRefLocalObjectReference | SecretRef is a reference to a secret containing the credentials for a git repository. Secret needs to contain the field token containing a GitHub or GitLab token which has the permissions to read the repository. |