Options
All
  • Public
  • Public/Protected
  • All
Menu

Information used to construct resources when creating or updating an application in a Kubernetes cluster. This structure is designed for a typical microservice-type deployment of one container optionally providing a service on a single port. If you need anything more complicated than that, you can use the various partial specs in this structure to manage more elaborate applications and the applicationData callback on the [[KubernetesDeploymentRegistration]].

Hierarchy

  • KubernetesApplication

Index

Properties

Optional deploymentSpec

deploymentSpec: DeepPartial<V1Deployment>

Partial deployment spec for this application that is overlaid on top of the default deployment spec template. It can be used to provide custom resource specifications, liveness and readiness checks, etc.

image

image: string

Full image name and tag for deployment pod template container.

Optional ingressSpec

ingressSpec: DeepPartial<NetworkingV1beta1Ingress>

Partial ingress spec for this application that is overlaid on top of the default ingress spec template.

Optional mode

mode: "full" | "sync"

Mode of operation. If not provided, the "full" mode is used, making calls to the Kubernetes API and, if configured, persisting changes to the sync/GitOps repo. If set to "sync", it will only persist changes to the configured sync/GitOps repo, making no calls to the Kubernetes API.

name

name: string

Name of resources to create. It can be overriden for individual resources in the partial specs.

ns

ns: string

Namespace to create resources in.

Optional patchStrategy

patchStrategy: "application/merge-patch+json" | "application/strategic-merge-patch+json"

Strategy to use when patching resources for this application. Supported values are "application/merge-patch+json" and "application/strategic-merge-patch+json". The default is "application/strategic-merge-patch+json". See https://kubernetes.io/docs/tasks/run-application/update-api-object-kubectl-patch/ for details.

Optional path

path: string

Ingress rule URL path, if not provided no ingress rule is added. Typically ingress paths start with a forward slash ("/") but do not end with one, unless the path is just "/".

Optional port

port: number

Port the service listens on, if not provided, no service resource is created.

Optional roleBindingSpec

roleBindingSpec: DeepPartial<V1RoleBinding> | DeepPartial<V1ClusterRoleBinding>

Partial role binding spec for the role to service account. This partial spec is overlaid onto the default role binding spec, which contains metadata and the role and service account names. The role binding is only created if the roleSpec is also provided.

Optional roleSpec

roleSpec: DeepPartial<V1Role> | DeepPartial<V1ClusterRole>

Partial role to create for binding to service account. If provided, this partial spec is overlaid onto the default role spec, which is just metadata with no rules. If this is not defined, this deployment will not create a role and therefore not bind a role to a service account.

Optional secrets

secrets: V1Secret[]

Secrets to upsert prior to creating deployment.

Optional serviceAccountSpec

serviceAccountSpec: DeepPartial<V1ServiceAccount>

Partial service account spec to create and use in the deployment. This partial spec is overlaid onto the default service account spec. If the serviceAccountSpec is provided, the resulting service account spec is upserted during deployment. If a roleSpec is provided, the resulting service account spec is upserted during deployment and a role binding is created between the role and service account. If neither the serviceAccountSpec nor roleSpec are created, no service account is managed by the deployment. If this spec contains a name, it is used in the role binding and deployment specs.

Optional serviceSpec

serviceSpec: DeepPartial<V1Service>

Partial service spec for this application that is overlaid on top of the default service spec template.

workspaceId

workspaceId: string

Atomist workspace ID

Generated using TypeDoc