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 |
---|---|
apiVersion string | kuberik.io/v1alpha1 |
kind string | Live |
metadata ObjectMeta | No description provided. Refer to the Kubernetes API documentation for the fields of the metadata field. |
spec LiveSpec | 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 |
status LiveStatus | 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 |
---|---|
apiVersion string | kuberik.io/v1alpha1 |
kind string | LiveDeployment |
metadata ObjectMeta | No description provided. Refer to the Kubernetes API documentation for the fields of the metadata field. |
spec LiveDeploymentSpec | 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 |
status LiveDeploymentStatus | 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 |
---|---|
apiVersion string | kuberik.io/v1alpha1 |
kind string | LiveDeploymentGroup |
metadata ObjectMeta | No description provided. Refer to the Kubernetes API documentation for the fields of the metadata field. |
spec LiveDeploymentGroupSpec | 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 |
status LiveDeploymentGroupStatus | 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 |
---|---|
branchMatch string | Regex pattern used to match branches that will be deployed |
template LiveTemplate | Template of the created Live resources that will be used to deploy latest commit from each matching branch. |
pollIntervalSeconds int32 | 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 |
---|---|
branch string | Branch of the git repository specified in the Live template that will be continuously deployed. |
template LiveTemplate | Template of the created Live resource that will be used to deploy latest commit from the specified branch. |
pollIntervalSeconds int32 | 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 |
---|---|
path string | Relative path of the kustomize layer within the specified git repository which will be applied to the cluster. |
commit string | Commit of the git repository that will be checked out to deploy kustomize layer from. |
repository Repository | Git repository containing the kustomize layer that needs to be deployed |
interruptible bool | Interruptible defines if the Live can be updated while it is already actively reconciling |
transformers string | 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). |
serviceAccountName string | 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 |
retries int | Number of consecutive apply attempts that resulted in a failure |
LiveTemplate
Appears in:
LiveTemplate describes a Live that will be created
Field | Description |
---|---|
metadata ObjectMeta | 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. |
spec LiveSpec | 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 |
---|---|
url string | URL of the git repository |
auth RepositoryAuth | Authentication configuration for the git repository |
RepositoryAuth
Appears in:
RepositoryAuth defines authentication configuration for a git repository
Field | Description |
---|---|
secretRef LocalObjectReference | 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. |